/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/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 01:15:12,723 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 01:15:12,725 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 01:15:12,761 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 01:15:12,761 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 01:15:12,763 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 01:15:12,765 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 01:15:12,767 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 01:15:12,768 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 01:15:12,772 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 01:15:12,772 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 01:15:12,773 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 01:15:12,774 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 01:15:12,775 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 01:15:12,776 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 01:15:12,778 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 01:15:12,779 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 01:15:12,779 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 01:15:12,781 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 01:15:12,785 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 01:15:12,786 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 01:15:12,787 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 01:15:12,787 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 01:15:12,788 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 01:15:12,789 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 01:15:12,794 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 01:15:12,794 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 01:15:12,794 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 01:15:12,795 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 01:15:12,795 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 01:15:12,796 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 01:15:12,796 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 01:15:12,798 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 01:15:12,798 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 01:15:12,798 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 01:15:12,799 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 01:15:12,799 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 01:15:12,799 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 01:15:12,800 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 01:15:12,800 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 01:15:12,800 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 01:15:12,801 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 01:15:12,802 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-28 01:15:12,823 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 01:15:12,823 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 01:15:12,824 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-28 01:15:12,824 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-28 01:15:12,825 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-28 01:15:12,825 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-28 01:15:12,825 INFO L138 SettingsManager]: * Use SBE=true [2022-04-28 01:15:12,825 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 01:15:12,825 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 01:15:12,826 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 01:15:12,826 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 01:15:12,826 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 01:15:12,827 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-28 01:15:12,827 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-28 01:15:12,827 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-28 01:15:12,827 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-28 01:15:12,827 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 01:15:12,827 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-28 01:15:12,827 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-28 01:15:12,828 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-28 01:15:12,828 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR 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-28 01:15:13,014 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 01:15:13,037 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 01:15:13,039 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 01:15:13,040 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 01:15:13,040 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 01:15:13,041 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound10.c [2022-04-28 01:15:13,078 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7a4338fec/1f6c21c5ae7c4b7ab58b44ab9b0c980c/FLAGf6351d0f3 [2022-04-28 01:15:13,398 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 01:15:13,398 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound10.c [2022-04-28 01:15:13,402 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7a4338fec/1f6c21c5ae7c4b7ab58b44ab9b0c980c/FLAGf6351d0f3 [2022-04-28 01:15:13,852 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7a4338fec/1f6c21c5ae7c4b7ab58b44ab9b0c980c [2022-04-28 01:15:13,854 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 01:15:13,855 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-28 01:15:13,863 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 01:15:13,863 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 01:15:13,865 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 01:15:13,866 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:15:13" (1/1) ... [2022-04-28 01:15:13,867 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3335e36d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:13, skipping insertion in model container [2022-04-28 01:15:13,867 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:15:13" (1/1) ... [2022-04-28 01:15:13,871 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 01:15:13,879 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 01:15:13,996 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_unwindbound10.c[524,537] [2022-04-28 01:15:14,033 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 01:15:14,044 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 01:15:14,054 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_unwindbound10.c[524,537] [2022-04-28 01:15:14,060 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 01:15:14,074 INFO L208 MainTranslator]: Completed translation [2022-04-28 01:15:14,075 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14 WrapperNode [2022-04-28 01:15:14,075 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 01:15:14,076 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 01:15:14,090 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 01:15:14,090 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 01:15:14,099 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,099 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,107 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,107 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,112 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,116 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,117 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,121 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 01:15:14,127 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 01:15:14,127 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 01:15:14,128 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 01:15:14,128 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 01:15:14,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:15:14,167 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-28 01:15:14,173 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-28 01:15:14,198 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 01:15:14,198 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 01:15:14,203 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 01:15:14,203 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 01:15:14,203 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 01:15:14,203 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 01:15:14,204 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 01:15:14,204 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 01:15:14,205 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 01:15:14,205 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 01:15:14,205 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 01:15:14,205 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 01:15:14,206 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 01:15:14,206 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 01:15:14,206 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 01:15:14,206 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 01:15:14,208 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 01:15:14,208 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 01:15:14,209 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 01:15:14,209 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 01:15:14,252 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 01:15:14,253 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 01:15:14,456 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 01:15:14,460 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 01:15:14,460 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 01:15:14,461 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:15:14 BoogieIcfgContainer [2022-04-28 01:15:14,461 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 01:15:14,462 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-28 01:15:14,462 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-28 01:15:14,464 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-28 01:15:14,476 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:15:14" (1/1) ... [2022-04-28 01:15:14,477 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-28 01:15:14,516 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 01:15:14 BasicIcfg [2022-04-28 01:15:14,516 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-28 01:15:14,517 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 01:15:14,518 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 01:15:14,526 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 01:15:14,526 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 01:15:13" (1/4) ... [2022-04-28 01:15:14,527 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3e0d4ac4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:15:14, skipping insertion in model container [2022-04-28 01:15:14,527 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:15:14" (2/4) ... [2022-04-28 01:15:14,527 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3e0d4ac4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:15:14, skipping insertion in model container [2022-04-28 01:15:14,527 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:15:14" (3/4) ... [2022-04-28 01:15:14,528 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3e0d4ac4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 01:15:14, skipping insertion in model container [2022-04-28 01:15:14,528 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 01:15:14" (4/4) ... [2022-04-28 01:15:14,528 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound10.cqvasr [2022-04-28 01:15:14,546 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-28 01:15:14,546 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 01:15:14,585 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 01:15:14,590 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=FINITE_AUTOMATA, 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@317108e, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@35b59a4c [2022-04-28 01:15:14,591 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 01:15:14,596 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-28 01:15:14,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-28 01:15:14,600 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:15:14,601 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:15:14,602 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:15:14,607 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:15:14,607 INFO L85 PathProgramCache]: Analyzing trace with hash -1119019339, now seen corresponding path program 1 times [2022-04-28 01:15:14,613 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:15:14,614 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1926743889] [2022-04-28 01:15:14,614 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:15:14,614 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:15:14,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:14,757 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 01:15:14,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:14,770 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {35#true} is VALID [2022-04-28 01:15:14,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-28 01:15:14,771 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-28 01:15:14,772 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 01:15:14,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:14,788 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-28 01:15:14,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [91] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:15:14,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:15:14,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-28 01:15:14,791 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 01:15:14,791 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {35#true} is VALID [2022-04-28 01:15:14,791 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-28 01:15:14,792 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-28 01:15:14,792 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-28 01:15:14,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {35#true} is VALID [2022-04-28 01:15:14,792 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-28 01:15:14,792 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-28 01:15:14,794 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [91] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:15:14,794 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:15:14,795 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-28 01:15:14,795 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {36#false} is VALID [2022-04-28 01:15:14,795 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} [89] L46-2-->L33-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:15:14,795 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {36#false} is VALID [2022-04-28 01:15:14,795 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {36#false} is VALID [2022-04-28 01:15:14,796 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:15:14,796 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:15:14,796 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-28 01:15:14,796 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:15:14,797 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1926743889] [2022-04-28 01:15:14,797 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1926743889] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:15:14,797 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:15:14,797 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 01:15:14,798 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1346281195] [2022-04-28 01:15:14,799 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:15:14,806 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-28 01:15:14,807 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:15:14,809 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-28 01:15:14,836 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-28 01:15:14,837 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 01:15:14,837 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:15:14,857 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 01:15:14,857 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 01:15:14,860 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-28 01:15:15,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:15,005 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-28 01:15:15,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 01:15:15,006 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-28 01:15:15,006 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:15:15,007 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-28 01:15:15,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 01:15:15,013 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-28 01:15:15,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 01:15:15,018 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-28 01:15:15,086 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-28 01:15:15,093 INFO L225 Difference]: With dead ends: 56 [2022-04-28 01:15:15,094 INFO L226 Difference]: Without dead ends: 28 [2022-04-28 01:15:15,096 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-28 01:15:15,100 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-28 01:15:15,101 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-28 01:15:15,112 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-28 01:15:15,125 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-28 01:15:15,126 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:15:15,126 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-28 01:15:15,128 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-28 01:15:15,128 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-28 01:15:15,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:15,133 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 01:15:15,133 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 01:15:15,134 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:15:15,135 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:15:15,138 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-28 01:15:15,138 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-28 01:15:15,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:15,153 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 01:15:15,153 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 01:15:15,154 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:15:15,154 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:15:15,154 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:15:15,154 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:15:15,154 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-28 01:15:15,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-28 01:15:15,157 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-28 01:15:15,157 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:15:15,157 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-28 01:15:15,158 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-28 01:15:15,158 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-28 01:15:15,158 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 01:15:15,158 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:15:15,158 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-28 01:15:15,158 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 01:15:15,159 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:15:15,160 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:15:15,161 INFO L85 PathProgramCache]: Analyzing trace with hash -496973861, now seen corresponding path program 1 times [2022-04-28 01:15:15,161 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:15:15,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [989848438] [2022-04-28 01:15:15,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:15:15,161 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:15:15,183 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:15:15,184 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [461699212] [2022-04-28 01:15:15,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:15:15,184 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:15:15,184 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:15:15,200 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-28 01:15:15,241 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-28 01:15:15,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:15,276 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 01:15:15,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:15,287 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:15:15,436 INFO L272 TraceCheckUtils]: 0: Hoare triple {214#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {214#true} is VALID [2022-04-28 01:15:15,437 INFO L290 TraceCheckUtils]: 1: Hoare triple {214#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,437 INFO L290 TraceCheckUtils]: 2: Hoare triple {222#(<= ~counter~0 0)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,438 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {222#(<= ~counter~0 0)} {214#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,438 INFO L272 TraceCheckUtils]: 4: Hoare triple {222#(<= ~counter~0 0)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,439 INFO L290 TraceCheckUtils]: 5: Hoare triple {222#(<= ~counter~0 0)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,439 INFO L272 TraceCheckUtils]: 6: Hoare triple {222#(<= ~counter~0 0)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,440 INFO L290 TraceCheckUtils]: 7: Hoare triple {222#(<= ~counter~0 0)} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,440 INFO L290 TraceCheckUtils]: 8: Hoare triple {222#(<= ~counter~0 0)} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,440 INFO L290 TraceCheckUtils]: 9: Hoare triple {222#(<= ~counter~0 0)} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,441 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {222#(<= ~counter~0 0)} {222#(<= ~counter~0 0)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,441 INFO L290 TraceCheckUtils]: 11: Hoare triple {222#(<= ~counter~0 0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {222#(<= ~counter~0 0)} is VALID [2022-04-28 01:15:15,442 INFO L290 TraceCheckUtils]: 12: Hoare triple {222#(<= ~counter~0 0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {256#(<= |main_#t~post6| 0)} is VALID [2022-04-28 01:15:15,442 INFO L290 TraceCheckUtils]: 13: Hoare triple {256#(<= |main_#t~post6| 0)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {215#false} is VALID [2022-04-28 01:15:15,443 INFO L272 TraceCheckUtils]: 14: Hoare triple {215#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {215#false} is VALID [2022-04-28 01:15:15,443 INFO L290 TraceCheckUtils]: 15: Hoare triple {215#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {215#false} is VALID [2022-04-28 01:15:15,443 INFO L290 TraceCheckUtils]: 16: Hoare triple {215#false} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {215#false} is VALID [2022-04-28 01:15:15,444 INFO L290 TraceCheckUtils]: 17: Hoare triple {215#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {215#false} is VALID [2022-04-28 01:15:15,444 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-28 01:15:15,444 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:15:15,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:15:15,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [989848438] [2022-04-28 01:15:15,445 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:15:15,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [461699212] [2022-04-28 01:15:15,447 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [461699212] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:15:15,447 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:15:15,447 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 01:15:15,448 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1940176274] [2022-04-28 01:15:15,449 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:15:15,449 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-28 01:15:15,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:15:15,450 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-28 01:15:15,463 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-28 01:15:15,464 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 01:15:15,464 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:15:15,464 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 01:15:15,464 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 01:15:15,465 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-28 01:15:15,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:15,525 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-28 01:15:15,525 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 01:15:15,526 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-28 01:15:15,526 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:15:15,526 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-28 01:15:15,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 01:15:15,531 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-28 01:15:15,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 01:15:15,535 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-28 01:15:15,565 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-28 01:15:15,566 INFO L225 Difference]: With dead ends: 37 [2022-04-28 01:15:15,567 INFO L226 Difference]: Without dead ends: 29 [2022-04-28 01:15:15,567 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-28 01:15:15,570 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-28 01:15:15,571 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-28 01:15:15,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-28 01:15:15,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-28 01:15:15,579 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:15:15,579 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-28 01:15:15,580 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-28 01:15:15,580 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-28 01:15:15,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:15,583 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 01:15:15,583 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 01:15:15,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:15:15,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:15:15,586 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-28 01:15:15,586 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-28 01:15:15,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:15,588 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 01:15:15,588 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 01:15:15,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:15:15,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:15:15,589 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:15:15,589 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:15:15,589 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-28 01:15:15,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-28 01:15:15,594 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-28 01:15:15,594 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:15:15,594 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-28 01:15:15,594 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-28 01:15:15,595 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 01:15:15,596 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 01:15:15,596 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:15:15,596 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-28 01:15:15,615 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-28 01:15:15,811 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-28 01:15:15,812 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:15:15,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:15:15,812 INFO L85 PathProgramCache]: Analyzing trace with hash -495871594, now seen corresponding path program 1 times [2022-04-28 01:15:15,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:15:15,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [792400160] [2022-04-28 01:15:15,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:15:15,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:15:15,836 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:15:15,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2057145115] [2022-04-28 01:15:15,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:15:15,836 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:15:15,836 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:15:15,851 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-28 01:15:15,854 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-28 01:15:15,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:15,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 01:15:15,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:15,908 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:15:16,038 INFO L272 TraceCheckUtils]: 0: Hoare triple {422#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {422#true} is VALID [2022-04-28 01:15:16,038 INFO L290 TraceCheckUtils]: 1: Hoare triple {422#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {422#true} is VALID [2022-04-28 01:15:16,039 INFO L290 TraceCheckUtils]: 2: Hoare triple {422#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {422#true} is VALID [2022-04-28 01:15:16,039 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {422#true} {422#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {422#true} is VALID [2022-04-28 01:15:16,039 INFO L272 TraceCheckUtils]: 4: Hoare triple {422#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {422#true} is VALID [2022-04-28 01:15:16,039 INFO L290 TraceCheckUtils]: 5: Hoare triple {422#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {422#true} is VALID [2022-04-28 01:15:16,039 INFO L272 TraceCheckUtils]: 6: Hoare triple {422#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {422#true} is VALID [2022-04-28 01:15:16,039 INFO L290 TraceCheckUtils]: 7: Hoare triple {422#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {422#true} is VALID [2022-04-28 01:15:16,040 INFO L290 TraceCheckUtils]: 8: Hoare triple {422#true} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {422#true} is VALID [2022-04-28 01:15:16,040 INFO L290 TraceCheckUtils]: 9: Hoare triple {422#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {422#true} is VALID [2022-04-28 01:15:16,040 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {422#true} {422#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {422#true} is VALID [2022-04-28 01:15:16,040 INFO L290 TraceCheckUtils]: 11: Hoare triple {422#true} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~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-28 01:15:16,041 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))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#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-28 01:15:16,041 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))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#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-28 01:15:16,042 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))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {470#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:15:16,043 INFO L290 TraceCheckUtils]: 15: Hoare triple {470#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {474#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:15:16,043 INFO L290 TraceCheckUtils]: 16: Hoare triple {474#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {423#false} is VALID [2022-04-28 01:15:16,043 INFO L290 TraceCheckUtils]: 17: Hoare triple {423#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {423#false} is VALID [2022-04-28 01:15:16,044 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-28 01:15:16,044 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:15:16,044 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:15:16,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [792400160] [2022-04-28 01:15:16,044 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:15:16,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2057145115] [2022-04-28 01:15:16,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2057145115] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:15:16,044 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:15:16,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 01:15:16,044 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1993345118] [2022-04-28 01:15:16,044 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:15:16,045 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-28 01:15:16,045 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:15:16,045 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-28 01:15:16,057 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-28 01:15:16,057 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 01:15:16,057 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:15:16,057 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 01:15:16,058 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 01:15:16,058 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-28 01:15:16,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:16,193 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-28 01:15:16,193 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 01:15:16,193 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-28 01:15:16,193 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:15:16,193 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-28 01:15:16,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 01:15:16,195 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-28 01:15:16,196 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 01:15:16,196 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-28 01:15:16,239 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-28 01:15:16,240 INFO L225 Difference]: With dead ends: 42 [2022-04-28 01:15:16,241 INFO L226 Difference]: Without dead ends: 40 [2022-04-28 01:15:16,241 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-28 01:15:16,241 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.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:15:16,242 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.0s Time] [2022-04-28 01:15:16,242 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-28 01:15:16,247 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-28 01:15:16,247 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:15:16,248 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-28 01:15:16,248 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-28 01:15:16,248 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-28 01:15:16,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:16,250 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 01:15:16,250 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 01:15:16,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:15:16,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:15:16,250 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-28 01:15:16,251 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-28 01:15:16,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:15:16,252 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 01:15:16,252 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 01:15:16,253 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:15:16,253 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:15:16,253 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:15:16,253 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:15:16,253 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-28 01:15:16,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-28 01:15:16,254 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-28 01:15:16,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:15:16,254 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-28 01:15:16,254 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-28 01:15:16,255 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-28 01:15:16,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 01:15:16,255 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:15:16,255 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-28 01:15:16,273 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-28 01:15:16,473 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-28 01:15:16,474 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:15:16,474 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:15:16,474 INFO L85 PathProgramCache]: Analyzing trace with hash -1025358414, now seen corresponding path program 1 times [2022-04-28 01:15:16,474 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:15:16,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1732901252] [2022-04-28 01:15:16,474 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:15:16,474 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:15:16,499 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:15:16,499 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [150589235] [2022-04-28 01:15:16,499 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:15:16,500 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:15:16,500 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:15:16,504 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-28 01:15:16,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:16,541 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-28 01:15:16,551 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 01:15:16,561 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:15:16,562 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:15:27,080 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:15:27,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {668#true} is VALID [2022-04-28 01:15:27,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:15:27,081 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:15:27,081 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:15:27,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {668#true} is VALID [2022-04-28 01:15:27,082 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {668#true} is VALID [2022-04-28 01:15:27,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:15:27,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:15:27,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {698#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:15:27,083 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {698#(not (= |assume_abort_if_not_#in~cond| 0))} {668#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {705#(<= 1 main_~y~0)} is VALID [2022-04-28 01:15:27,084 INFO L290 TraceCheckUtils]: 11: Hoare triple {705#(<= 1 main_~y~0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 01:15:27,084 INFO L290 TraceCheckUtils]: 12: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 01:15:27,084 INFO L290 TraceCheckUtils]: 13: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 01:15:27,085 INFO L272 TraceCheckUtils]: 14: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {668#true} is VALID [2022-04-28 01:15:27,085 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {722#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:15:27,085 INFO L290 TraceCheckUtils]: 16: Hoare triple {722#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:15:27,086 INFO L290 TraceCheckUtils]: 17: Hoare triple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:15:29,093 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))} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {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-28 01:15:29,095 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))} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {737#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 01:15:29,095 INFO L272 TraceCheckUtils]: 20: Hoare triple {737#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {741#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:15:29,096 INFO L290 TraceCheckUtils]: 21: Hoare triple {741#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {745#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:15:29,102 INFO L290 TraceCheckUtils]: 22: Hoare triple {745#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {669#false} is VALID [2022-04-28 01:15:29,103 INFO L290 TraceCheckUtils]: 23: Hoare triple {669#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {669#false} is VALID [2022-04-28 01:15:29,103 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-28 01:15:29,103 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:16:02,435 INFO L290 TraceCheckUtils]: 23: Hoare triple {669#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {669#false} is VALID [2022-04-28 01:16:02,436 INFO L290 TraceCheckUtils]: 22: Hoare triple {745#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {669#false} is VALID [2022-04-28 01:16:02,436 INFO L290 TraceCheckUtils]: 21: Hoare triple {741#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {745#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:16:02,437 INFO L272 TraceCheckUtils]: 20: Hoare triple {761#(= main_~q~0 (* main_~y~0 main_~x~0))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {741#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:16:02,437 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))))} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {761#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 01:16:02,439 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} {668#true} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {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-28 01:16:02,439 INFO L290 TraceCheckUtils]: 17: Hoare triple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:16:02,440 INFO L290 TraceCheckUtils]: 16: Hoare triple {778#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:16:02,440 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {778#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:16:02,440 INFO L272 TraceCheckUtils]: 14: Hoare triple {668#true} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {668#true} is VALID [2022-04-28 01:16:02,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L290 TraceCheckUtils]: 12: Hoare triple {668#true} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L290 TraceCheckUtils]: 11: Hoare triple {668#true} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {668#true} {668#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L290 TraceCheckUtils]: 9: Hoare triple {668#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {668#true} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {668#true} is VALID [2022-04-28 01:16:02,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {668#true} is VALID [2022-04-28 01:16:02,442 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:16:02,442 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:16:02,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:16:02,442 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {668#true} is VALID [2022-04-28 01:16:02,442 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-28 01:16:02,442 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-28 01:16:02,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:16:02,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1732901252] [2022-04-28 01:16:02,443 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:16:02,443 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [150589235] [2022-04-28 01:16:02,443 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [150589235] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:16:02,443 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:16:02,443 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-28 01:16:02,443 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [221811864] [2022-04-28 01:16:02,443 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:16:02,443 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-28 01:16:02,444 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:16:02,444 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-28 01:16:04,470 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-28 01:16:04,471 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 01:16:04,471 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:16:04,471 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 01:16:04,471 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-28 01:16:04,472 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-28 01:16:08,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:16:08,472 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 01:16:08,472 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 01:16:08,472 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-28 01:16:08,472 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:16:08,472 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-28 01:16:08,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-28 01:16:08,474 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-28 01:16:08,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-28 01:16:08,476 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 69 transitions. [2022-04-28 01:16:10,550 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-28 01:16:10,551 INFO L225 Difference]: With dead ends: 55 [2022-04-28 01:16:10,551 INFO L226 Difference]: Without dead ends: 53 [2022-04-28 01:16:10,552 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-28 01:16:10,552 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 51 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 199 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.0s 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, 2.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:16:10,553 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [55 Valid, 123 Invalid, 230 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 199 Invalid, 0 Unknown, 0 Unchecked, 2.0s Time] [2022-04-28 01:16:10,553 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-28 01:16:10,565 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 39. [2022-04-28 01:16:10,565 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:16:10,566 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-28 01:16:10,566 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-28 01:16:10,567 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-28 01:16:10,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:16:10,573 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-28 01:16:10,573 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-28 01:16:10,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:16:10,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:16:10,576 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-28 01:16:10,576 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-28 01:16:10,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:16:10,579 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-28 01:16:10,579 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-28 01:16:10,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:16:10,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:16:10,579 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:16:10,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:16:10,580 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-28 01:16:10,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 45 transitions. [2022-04-28 01:16:10,581 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 45 transitions. Word has length 24 [2022-04-28 01:16:10,581 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:16:10,581 INFO L495 AbstractCegarLoop]: Abstraction has 39 states and 45 transitions. [2022-04-28 01:16:10,581 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-28 01:16:10,581 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-28 01:16:10,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 01:16:10,581 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:16:10,582 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-28 01:16:10,598 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-28 01:16:10,782 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-28 01:16:10,782 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:16:10,783 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:16:10,783 INFO L85 PathProgramCache]: Analyzing trace with hash -2117889998, now seen corresponding path program 1 times [2022-04-28 01:16:10,783 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:16:10,783 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [963074873] [2022-04-28 01:16:10,783 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:16:10,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:16:10,795 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:16:10,795 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1261175013] [2022-04-28 01:16:10,795 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:16:10,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:16:10,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:16:10,799 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-28 01:16:10,811 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-28 01:16:10,838 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:16:10,841 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 01:16:10,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:16:10,855 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:16:10,982 INFO L272 TraceCheckUtils]: 0: Hoare triple {1077#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1077#true} is VALID [2022-04-28 01:16:10,983 INFO L290 TraceCheckUtils]: 1: Hoare triple {1077#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,983 INFO L290 TraceCheckUtils]: 2: Hoare triple {1085#(<= ~counter~0 0)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1085#(<= ~counter~0 0)} {1077#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {1085#(<= ~counter~0 0)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {1085#(<= ~counter~0 0)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,985 INFO L272 TraceCheckUtils]: 6: Hoare triple {1085#(<= ~counter~0 0)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,985 INFO L290 TraceCheckUtils]: 7: Hoare triple {1085#(<= ~counter~0 0)} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {1085#(<= ~counter~0 0)} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,986 INFO L290 TraceCheckUtils]: 9: Hoare triple {1085#(<= ~counter~0 0)} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,986 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1085#(<= ~counter~0 0)} {1085#(<= ~counter~0 0)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,987 INFO L290 TraceCheckUtils]: 11: Hoare triple {1085#(<= ~counter~0 0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {1085#(<= ~counter~0 0)} is VALID [2022-04-28 01:16:10,987 INFO L290 TraceCheckUtils]: 12: Hoare triple {1085#(<= ~counter~0 0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,987 INFO L290 TraceCheckUtils]: 13: Hoare triple {1119#(<= ~counter~0 1)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,988 INFO L272 TraceCheckUtils]: 14: Hoare triple {1119#(<= ~counter~0 1)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,988 INFO L290 TraceCheckUtils]: 15: Hoare triple {1119#(<= ~counter~0 1)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,989 INFO L290 TraceCheckUtils]: 16: Hoare triple {1119#(<= ~counter~0 1)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,989 INFO L290 TraceCheckUtils]: 17: Hoare triple {1119#(<= ~counter~0 1)} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,990 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1119#(<= ~counter~0 1)} {1119#(<= ~counter~0 1)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,990 INFO L290 TraceCheckUtils]: 19: Hoare triple {1119#(<= ~counter~0 1)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,990 INFO L290 TraceCheckUtils]: 20: Hoare triple {1119#(<= ~counter~0 1)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {1119#(<= ~counter~0 1)} is VALID [2022-04-28 01:16:10,991 INFO L290 TraceCheckUtils]: 21: Hoare triple {1119#(<= ~counter~0 1)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1147#(<= |main_#t~post6| 1)} is VALID [2022-04-28 01:16:10,991 INFO L290 TraceCheckUtils]: 22: Hoare triple {1147#(<= |main_#t~post6| 1)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1078#false} is VALID [2022-04-28 01:16:10,991 INFO L272 TraceCheckUtils]: 23: Hoare triple {1078#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1078#false} is VALID [2022-04-28 01:16:10,991 INFO L290 TraceCheckUtils]: 24: Hoare triple {1078#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1078#false} is VALID [2022-04-28 01:16:10,992 INFO L290 TraceCheckUtils]: 25: Hoare triple {1078#false} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1078#false} is VALID [2022-04-28 01:16:10,992 INFO L290 TraceCheckUtils]: 26: Hoare triple {1078#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1078#false} is VALID [2022-04-28 01:16:10,992 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-28 01:16:10,992 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:16:11,137 INFO L290 TraceCheckUtils]: 26: Hoare triple {1078#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1078#false} is VALID [2022-04-28 01:16:11,137 INFO L290 TraceCheckUtils]: 25: Hoare triple {1078#false} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1078#false} is VALID [2022-04-28 01:16:11,137 INFO L290 TraceCheckUtils]: 24: Hoare triple {1078#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1078#false} is VALID [2022-04-28 01:16:11,138 INFO L272 TraceCheckUtils]: 23: Hoare triple {1078#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1078#false} is VALID [2022-04-28 01:16:11,138 INFO L290 TraceCheckUtils]: 22: Hoare triple {1175#(< |main_#t~post6| 10)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1078#false} is VALID [2022-04-28 01:16:11,139 INFO L290 TraceCheckUtils]: 21: Hoare triple {1179#(< ~counter~0 10)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1175#(< |main_#t~post6| 10)} is VALID [2022-04-28 01:16:11,139 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#(< ~counter~0 10)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {1179#(< ~counter~0 10)} is VALID [2022-04-28 01:16:11,139 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#(< ~counter~0 10)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {1179#(< ~counter~0 10)} is VALID [2022-04-28 01:16:11,140 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1077#true} {1179#(< ~counter~0 10)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1179#(< ~counter~0 10)} is VALID [2022-04-28 01:16:11,140 INFO L290 TraceCheckUtils]: 17: Hoare triple {1077#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1077#true} is VALID [2022-04-28 01:16:11,140 INFO L290 TraceCheckUtils]: 16: Hoare triple {1077#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1077#true} is VALID [2022-04-28 01:16:11,140 INFO L290 TraceCheckUtils]: 15: Hoare triple {1077#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1077#true} is VALID [2022-04-28 01:16:11,141 INFO L272 TraceCheckUtils]: 14: Hoare triple {1179#(< ~counter~0 10)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1077#true} is VALID [2022-04-28 01:16:11,141 INFO L290 TraceCheckUtils]: 13: Hoare triple {1179#(< ~counter~0 10)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1179#(< ~counter~0 10)} is VALID [2022-04-28 01:16:11,141 INFO L290 TraceCheckUtils]: 12: Hoare triple {1207#(< ~counter~0 9)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1179#(< ~counter~0 10)} is VALID [2022-04-28 01:16:11,142 INFO L290 TraceCheckUtils]: 11: Hoare triple {1207#(< ~counter~0 9)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {1207#(< ~counter~0 9)} is VALID [2022-04-28 01:16:11,142 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1077#true} {1207#(< ~counter~0 9)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1207#(< ~counter~0 9)} is VALID [2022-04-28 01:16:11,142 INFO L290 TraceCheckUtils]: 9: Hoare triple {1077#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1077#true} is VALID [2022-04-28 01:16:11,142 INFO L290 TraceCheckUtils]: 8: Hoare triple {1077#true} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1077#true} is VALID [2022-04-28 01:16:11,143 INFO L290 TraceCheckUtils]: 7: Hoare triple {1077#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1077#true} is VALID [2022-04-28 01:16:11,143 INFO L272 TraceCheckUtils]: 6: Hoare triple {1207#(< ~counter~0 9)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1077#true} is VALID [2022-04-28 01:16:11,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {1207#(< ~counter~0 9)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1207#(< ~counter~0 9)} is VALID [2022-04-28 01:16:11,145 INFO L272 TraceCheckUtils]: 4: Hoare triple {1207#(< ~counter~0 9)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1207#(< ~counter~0 9)} is VALID [2022-04-28 01:16:11,145 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1207#(< ~counter~0 9)} {1077#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1207#(< ~counter~0 9)} is VALID [2022-04-28 01:16:11,145 INFO L290 TraceCheckUtils]: 2: Hoare triple {1207#(< ~counter~0 9)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1207#(< ~counter~0 9)} is VALID [2022-04-28 01:16:11,146 INFO L290 TraceCheckUtils]: 1: Hoare triple {1077#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1207#(< ~counter~0 9)} is VALID [2022-04-28 01:16:11,146 INFO L272 TraceCheckUtils]: 0: Hoare triple {1077#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1077#true} is VALID [2022-04-28 01:16:11,146 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-28 01:16:11,146 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:16:11,146 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [963074873] [2022-04-28 01:16:11,146 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:16:11,147 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1261175013] [2022-04-28 01:16:11,147 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1261175013] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:16:11,147 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:16:11,147 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-28 01:16:11,147 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1074690511] [2022-04-28 01:16:11,147 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:16:11,147 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-28 01:16:11,148 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:16:11,148 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-28 01:16:11,181 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-28 01:16:11,181 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 01:16:11,181 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:16:11,182 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 01:16:11,182 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-28 01:16:11,182 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-28 01:16:11,427 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:16:11,427 INFO L93 Difference]: Finished difference Result 103 states and 123 transitions. [2022-04-28 01:16:11,427 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 01:16:11,428 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-28 01:16:11,428 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:16:11,428 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-28 01:16:11,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 01:16:11,430 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-28 01:16:11,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 01:16:11,431 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-28 01:16:11,505 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-28 01:16:11,507 INFO L225 Difference]: With dead ends: 103 [2022-04-28 01:16:11,507 INFO L226 Difference]: Without dead ends: 93 [2022-04-28 01:16:11,507 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-28 01:16:11,508 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-28 01:16:11,508 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-28 01:16:11,508 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-28 01:16:11,544 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 87. [2022-04-28 01:16:11,544 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:16:11,544 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-28 01:16:11,544 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-28 01:16:11,545 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-28 01:16:11,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:16:11,547 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-28 01:16:11,547 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-28 01:16:11,547 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:16:11,547 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:16:11,548 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-28 01:16:11,548 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-28 01:16:11,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:16:11,550 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-28 01:16:11,550 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-28 01:16:11,550 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:16:11,550 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:16:11,550 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:16:11,550 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:16:11,551 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-28 01:16:11,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 107 transitions. [2022-04-28 01:16:11,553 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 107 transitions. Word has length 27 [2022-04-28 01:16:11,553 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:16:11,553 INFO L495 AbstractCegarLoop]: Abstraction has 87 states and 107 transitions. [2022-04-28 01:16:11,553 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-28 01:16:11,553 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 107 transitions. [2022-04-28 01:16:11,553 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 01:16:11,554 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:16:11,554 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-28 01:16:11,573 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-28 01:16:11,769 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-28 01:16:11,770 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:16:11,770 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:16:11,770 INFO L85 PathProgramCache]: Analyzing trace with hash -2116787731, now seen corresponding path program 1 times [2022-04-28 01:16:11,770 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:16:11,770 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1674046631] [2022-04-28 01:16:11,770 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:16:11,770 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:16:11,781 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:16:11,781 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1961371144] [2022-04-28 01:16:11,781 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:16:11,781 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:16:11,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:16:11,782 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-28 01:16:11,787 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-28 01:16:11,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:16:11,826 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-28 01:16:11,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:16:11,839 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:16:13,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {1697#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:16:13,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {1697#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1697#true} is VALID [2022-04-28 01:16:13,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {1697#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:16:13,221 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1697#true} {1697#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:16:13,221 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:16:13,221 INFO L290 TraceCheckUtils]: 5: Hoare triple {1697#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1697#true} is VALID [2022-04-28 01:16:13,221 INFO L272 TraceCheckUtils]: 6: Hoare triple {1697#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1697#true} is VALID [2022-04-28 01:16:13,221 INFO L290 TraceCheckUtils]: 7: Hoare triple {1697#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:16:13,222 INFO L290 TraceCheckUtils]: 8: Hoare triple {1723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:16:13,222 INFO L290 TraceCheckUtils]: 9: Hoare triple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:16:13,222 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} {1697#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1734#(<= 1 main_~y~0)} is VALID [2022-04-28 01:16:13,223 INFO L290 TraceCheckUtils]: 11: Hoare triple {1734#(<= 1 main_~y~0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~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-28 01:16:13,223 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))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#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-28 01:16:13,224 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))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#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-28 01:16:13,224 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))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1697#true} is VALID [2022-04-28 01:16:13,224 INFO L290 TraceCheckUtils]: 15: Hoare triple {1697#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1751#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:16:13,225 INFO L290 TraceCheckUtils]: 16: Hoare triple {1751#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:16:13,225 INFO L290 TraceCheckUtils]: 17: Hoare triple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:16:13,225 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))} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~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-28 01:16:13,226 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))} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {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-28 01:16:13,227 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))} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~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-28 01:16:13,227 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))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#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-28 01:16:13,228 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))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#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-28 01:16:13,230 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))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:16:13,231 INFO L290 TraceCheckUtils]: 24: Hoare triple {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1782#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:16:13,231 INFO L290 TraceCheckUtils]: 25: Hoare triple {1782#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1698#false} is VALID [2022-04-28 01:16:13,231 INFO L290 TraceCheckUtils]: 26: Hoare triple {1698#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1698#false} is VALID [2022-04-28 01:16:13,231 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-28 01:16:13,231 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:17:26,474 INFO L290 TraceCheckUtils]: 26: Hoare triple {1698#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1698#false} is VALID [2022-04-28 01:17:26,474 INFO L290 TraceCheckUtils]: 25: Hoare triple {1782#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1698#false} is VALID [2022-04-28 01:17:26,475 INFO L290 TraceCheckUtils]: 24: Hoare triple {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1782#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:17:26,475 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))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:17:26,476 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))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#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-28 01:17:26,476 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))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#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-28 01:17:26,480 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))))} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 01:17:26,480 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))))} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {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-28 01:17:26,487 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)))} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~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-28 01:17:26,487 INFO L290 TraceCheckUtils]: 17: Hoare triple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:17:26,491 INFO L290 TraceCheckUtils]: 16: Hoare triple {1825#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:17:26,491 INFO L290 TraceCheckUtils]: 15: Hoare triple {1697#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1825#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:17:26,492 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)))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1697#true} is VALID [2022-04-28 01:17:26,492 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)))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#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-28 01:17:26,493 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)))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#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-28 01:17:26,494 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)))} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~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-28 01:17:26,495 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} {1697#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {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-28 01:17:26,495 INFO L290 TraceCheckUtils]: 9: Hoare triple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:17:26,495 INFO L290 TraceCheckUtils]: 8: Hoare triple {1851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:17:26,496 INFO L290 TraceCheckUtils]: 7: Hoare triple {1697#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 01:17:26,496 INFO L272 TraceCheckUtils]: 6: Hoare triple {1697#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1697#true} is VALID [2022-04-28 01:17:26,496 INFO L290 TraceCheckUtils]: 5: Hoare triple {1697#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1697#true} is VALID [2022-04-28 01:17:26,496 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:17:26,496 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1697#true} {1697#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:17:26,496 INFO L290 TraceCheckUtils]: 2: Hoare triple {1697#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:17:26,496 INFO L290 TraceCheckUtils]: 1: Hoare triple {1697#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1697#true} is VALID [2022-04-28 01:17:26,496 INFO L272 TraceCheckUtils]: 0: Hoare triple {1697#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-28 01:17:26,497 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-28 01:17:26,497 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:17:26,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1674046631] [2022-04-28 01:17:26,497 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:17:26,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1961371144] [2022-04-28 01:17:26,497 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1961371144] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:17:26,497 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:17:26,497 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 17 [2022-04-28 01:17:26,497 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1444076086] [2022-04-28 01:17:26,497 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:17:26,498 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-28 01:17:26,498 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:17:26,498 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-28 01:17:26,570 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-28 01:17:26,570 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 01:17:26,570 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:17:26,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 01:17:26,570 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=223, Unknown=0, NotChecked=0, Total=272 [2022-04-28 01:17:26,571 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-28 01:17:30,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:30,366 INFO L93 Difference]: Finished difference Result 127 states and 164 transitions. [2022-04-28 01:17:30,366 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 01:17:30,366 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-28 01:17:30,367 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:17:30,367 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-28 01:17:30,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-28 01:17:30,368 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-28 01:17:30,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-28 01:17:30,380 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 83 transitions. [2022-04-28 01:17:30,579 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-28 01:17:30,582 INFO L225 Difference]: With dead ends: 127 [2022-04-28 01:17:30,582 INFO L226 Difference]: Without dead ends: 121 [2022-04-28 01:17:30,582 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=84, Invalid=378, Unknown=0, NotChecked=0, Total=462 [2022-04-28 01:17:30,582 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 99 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 281 mSolverCounterSat, 89 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s 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.7s IncrementalHoareTripleChecker+Time [2022-04-28 01:17:30,583 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.7s Time] [2022-04-28 01:17:30,583 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-04-28 01:17:30,626 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 79. [2022-04-28 01:17:30,626 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:17:30,626 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-28 01:17:30,626 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-28 01:17:30,627 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-28 01:17:30,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:30,630 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-28 01:17:30,631 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-28 01:17:30,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:30,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:30,631 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-28 01:17:30,632 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-28 01:17:30,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:30,635 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-28 01:17:30,635 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-28 01:17:30,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:30,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:30,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:17:30,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:17:30,636 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-28 01:17:30,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 96 transitions. [2022-04-28 01:17:30,638 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 96 transitions. Word has length 27 [2022-04-28 01:17:30,638 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:17:30,638 INFO L495 AbstractCegarLoop]: Abstraction has 79 states and 96 transitions. [2022-04-28 01:17:30,638 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-28 01:17:30,638 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 96 transitions. [2022-04-28 01:17:30,638 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 01:17:30,639 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:17:30,639 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-28 01:17:30,655 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-28 01:17:30,839 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-28 01:17:30,840 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:17:30,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:17:30,840 INFO L85 PathProgramCache]: Analyzing trace with hash -410392694, now seen corresponding path program 1 times [2022-04-28 01:17:30,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:17:30,840 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [694350134] [2022-04-28 01:17:30,840 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:30,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:17:30,855 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:17:30,855 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1816104306] [2022-04-28 01:17:30,856 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:30,856 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:17:30,856 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:17:30,856 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-28 01:17:30,860 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-28 01:17:30,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:17:30,889 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 01:17:30,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:17:30,898 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:17:31,028 INFO L272 TraceCheckUtils]: 0: Hoare triple {2407#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {2407#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2407#true} is VALID [2022-04-28 01:17:31,029 INFO L290 TraceCheckUtils]: 2: Hoare triple {2407#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,029 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2407#true} {2407#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,029 INFO L272 TraceCheckUtils]: 4: Hoare triple {2407#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,029 INFO L290 TraceCheckUtils]: 5: Hoare triple {2407#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {2407#true} is VALID [2022-04-28 01:17:31,029 INFO L272 TraceCheckUtils]: 6: Hoare triple {2407#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2407#true} is VALID [2022-04-28 01:17:31,029 INFO L290 TraceCheckUtils]: 7: Hoare triple {2407#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2433#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:17:31,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {2433#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:17:31,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {2437#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:17:31,030 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2437#(not (= |assume_abort_if_not_#in~cond| 0))} {2407#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2444#(<= 1 main_~y~0)} is VALID [2022-04-28 01:17:31,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {2444#(<= 1 main_~y~0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {2448#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:31,033 INFO L290 TraceCheckUtils]: 12: Hoare triple {2448#(<= 1 main_~b~0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2448#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:31,033 INFO L290 TraceCheckUtils]: 13: Hoare triple {2448#(<= 1 main_~b~0)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2448#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:31,033 INFO L272 TraceCheckUtils]: 14: Hoare triple {2448#(<= 1 main_~b~0)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {2407#true} is VALID [2022-04-28 01:17:31,033 INFO L290 TraceCheckUtils]: 15: Hoare triple {2407#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2407#true} is VALID [2022-04-28 01:17:31,033 INFO L290 TraceCheckUtils]: 16: Hoare triple {2407#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,033 INFO L290 TraceCheckUtils]: 17: Hoare triple {2407#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,034 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2407#true} {2448#(<= 1 main_~b~0)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {2448#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:31,034 INFO L290 TraceCheckUtils]: 19: Hoare triple {2448#(<= 1 main_~b~0)} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:17:31,034 INFO L272 TraceCheckUtils]: 20: Hoare triple {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2407#true} is VALID [2022-04-28 01:17:31,034 INFO L290 TraceCheckUtils]: 21: Hoare triple {2407#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2407#true} is VALID [2022-04-28 01:17:31,035 INFO L290 TraceCheckUtils]: 22: Hoare triple {2407#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,035 INFO L290 TraceCheckUtils]: 23: Hoare triple {2407#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-28 01:17:31,035 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2407#true} {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} [119] __VERIFIER_assertEXIT-->L56: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:17:31,036 INFO L272 TraceCheckUtils]: 25: Hoare triple {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} [97] L56-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~a~0_17 v_main_~b~0_17) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_17, main_~a~0=v_main_~a~0_17} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {2492#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:17:31,036 INFO L290 TraceCheckUtils]: 26: Hoare triple {2492#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2496#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:17:31,036 INFO L290 TraceCheckUtils]: 27: Hoare triple {2496#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2408#false} is VALID [2022-04-28 01:17:31,036 INFO L290 TraceCheckUtils]: 28: Hoare triple {2408#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2408#false} is VALID [2022-04-28 01:17:31,037 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-28 01:17:31,037 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:17:31,037 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:17:31,037 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [694350134] [2022-04-28 01:17:31,037 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:17:31,037 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1816104306] [2022-04-28 01:17:31,037 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1816104306] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:17:31,037 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:17:31,037 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 01:17:31,037 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [403428294] [2022-04-28 01:17:31,037 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:17:31,038 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-28 01:17:31,038 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:17:31,038 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-28 01:17:31,055 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-28 01:17:31,055 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 01:17:31,055 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:17:31,055 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 01:17:31,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 01:17:31,056 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-28 01:17:31,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:31,366 INFO L93 Difference]: Finished difference Result 116 states and 151 transitions. [2022-04-28 01:17:31,366 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 01:17:31,366 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-28 01:17:31,367 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:17:31,367 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-28 01:17:31,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 01:17:31,368 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-28 01:17:31,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 01:17:31,368 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-28 01:17:31,410 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-28 01:17:31,412 INFO L225 Difference]: With dead ends: 116 [2022-04-28 01:17:31,412 INFO L226 Difference]: Without dead ends: 104 [2022-04-28 01:17:31,412 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-28 01:17:31,413 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-28 01:17:31,413 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-28 01:17:31,413 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2022-04-28 01:17:31,472 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 99. [2022-04-28 01:17:31,473 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:17:31,473 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-28 01:17:31,473 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-28 01:17:31,473 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-28 01:17:31,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:31,476 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-28 01:17:31,476 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-28 01:17:31,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:31,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:31,476 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-28 01:17:31,476 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-28 01:17:31,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:31,478 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-28 01:17:31,479 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-28 01:17:31,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:31,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:31,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:17:31,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:17:31,479 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-28 01:17:31,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 125 transitions. [2022-04-28 01:17:31,481 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 125 transitions. Word has length 29 [2022-04-28 01:17:31,481 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:17:31,481 INFO L495 AbstractCegarLoop]: Abstraction has 99 states and 125 transitions. [2022-04-28 01:17:31,481 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-28 01:17:31,481 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 125 transitions. [2022-04-28 01:17:31,482 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 01:17:31,482 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:17:31,482 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-28 01:17:31,500 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-28 01:17:31,698 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-28 01:17:31,698 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:17:31,699 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:17:31,699 INFO L85 PathProgramCache]: Analyzing trace with hash 159893073, now seen corresponding path program 1 times [2022-04-28 01:17:31,699 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:17:31,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [23983043] [2022-04-28 01:17:31,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:31,699 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:17:31,712 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:17:31,712 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1323824743] [2022-04-28 01:17:31,712 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:31,712 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:17:31,712 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:17:31,713 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-28 01:17:31,714 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-28 01:17:31,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:17:31,747 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 01:17:31,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:17:31,756 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:17:31,880 INFO L272 TraceCheckUtils]: 0: Hoare triple {3011#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,883 INFO L290 TraceCheckUtils]: 1: Hoare triple {3011#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3011#true} is VALID [2022-04-28 01:17:31,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {3011#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,889 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3011#true} {3011#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,889 INFO L272 TraceCheckUtils]: 4: Hoare triple {3011#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L290 TraceCheckUtils]: 5: Hoare triple {3011#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L272 TraceCheckUtils]: 6: Hoare triple {3011#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {3011#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L290 TraceCheckUtils]: 8: Hoare triple {3011#true} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L290 TraceCheckUtils]: 9: Hoare triple {3011#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3011#true} {3011#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L290 TraceCheckUtils]: 11: Hoare triple {3011#true} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L290 TraceCheckUtils]: 12: Hoare triple {3011#true} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L290 TraceCheckUtils]: 13: Hoare triple {3011#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3011#true} is VALID [2022-04-28 01:17:31,890 INFO L272 TraceCheckUtils]: 14: Hoare triple {3011#true} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3011#true} is VALID [2022-04-28 01:17:31,891 INFO L290 TraceCheckUtils]: 15: Hoare triple {3011#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3011#true} is VALID [2022-04-28 01:17:31,891 INFO L290 TraceCheckUtils]: 16: Hoare triple {3011#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,891 INFO L290 TraceCheckUtils]: 17: Hoare triple {3011#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,891 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3011#true} {3011#true} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3011#true} is VALID [2022-04-28 01:17:31,891 INFO L290 TraceCheckUtils]: 19: Hoare triple {3011#true} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {3073#(not (= main_~a~0 0))} is VALID [2022-04-28 01:17:31,892 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(not (= main_~a~0 0))} [110] L39-->L43: Formula: (or (not (= (let ((.cse0 (mod v_main_~b~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~b~0_1 0)) (+ (- 2) .cse0) .cse0)) 0)) (not (= (let ((.cse1 (mod v_main_~a~0_1 2))) (ite (and (not (= .cse1 0)) (< v_main_~a~0_1 0)) (+ (- 2) .cse1) .cse1)) 0))) InVars {main_~b~0=v_main_~b~0_1, main_~a~0=v_main_~a~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[] {3073#(not (= main_~a~0 0))} is VALID [2022-04-28 01:17:31,892 INFO L290 TraceCheckUtils]: 21: Hoare triple {3073#(not (= main_~a~0 0))} [112] L43-->L46: Formula: (or (not (= 0 (let ((.cse0 (mod v_main_~b~0_3 2))) (ite (and (not (= .cse0 0)) (< v_main_~b~0_3 0)) (+ .cse0 (- 2)) .cse0)))) (not (= (let ((.cse1 (mod v_main_~a~0_4 2))) (ite (and (< v_main_~a~0_4 0) (not (= .cse1 0))) (+ .cse1 (- 2)) .cse1)) 1))) InVars {main_~b~0=v_main_~b~0_3, main_~a~0=v_main_~a~0_4} OutVars{main_~b~0=v_main_~b~0_3, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[] {3073#(not (= main_~a~0 0))} is VALID [2022-04-28 01:17:31,892 INFO L290 TraceCheckUtils]: 22: Hoare triple {3073#(not (= main_~a~0 0))} [113] L46-->L46-2: Formula: (and (= v_main_~q~0_3 (+ (* v_main_~a~0_5 v_main_~p~0_2) v_main_~q~0_4)) (= (+ (- 1) v_main_~b~0_5) v_main_~b~0_4) (= (let ((.cse0 (mod v_main_~a~0_5 2))) (ite (and (not (= .cse0 0)) (< v_main_~a~0_5 0)) (+ .cse0 (- 2)) .cse0)) 0) (= (let ((.cse1 (mod v_main_~b~0_5 2))) (ite (and (< v_main_~b~0_5 0) (not (= 0 .cse1))) (+ (- 2) .cse1) .cse1)) 1)) InVars {main_~q~0=v_main_~q~0_4, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_2, main_~a~0=v_main_~a~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~b~0=v_main_~b~0_4, main_~p~0=v_main_~p~0_2, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {3073#(not (= main_~a~0 0))} is VALID [2022-04-28 01:17:31,892 INFO L290 TraceCheckUtils]: 23: Hoare triple {3073#(not (= main_~a~0 0))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3073#(not (= main_~a~0 0))} is VALID [2022-04-28 01:17:31,893 INFO L290 TraceCheckUtils]: 24: Hoare triple {3073#(not (= main_~a~0 0))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3073#(not (= main_~a~0 0))} is VALID [2022-04-28 01:17:31,893 INFO L272 TraceCheckUtils]: 25: Hoare triple {3073#(not (= main_~a~0 0))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3011#true} is VALID [2022-04-28 01:17:31,893 INFO L290 TraceCheckUtils]: 26: Hoare triple {3011#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3011#true} is VALID [2022-04-28 01:17:31,893 INFO L290 TraceCheckUtils]: 27: Hoare triple {3011#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,893 INFO L290 TraceCheckUtils]: 28: Hoare triple {3011#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,894 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3011#true} {3073#(not (= main_~a~0 0))} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3073#(not (= main_~a~0 0))} is VALID [2022-04-28 01:17:31,894 INFO L290 TraceCheckUtils]: 30: Hoare triple {3073#(not (= main_~a~0 0))} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-28 01:17:31,894 INFO L272 TraceCheckUtils]: 31: Hoare triple {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {3011#true} is VALID [2022-04-28 01:17:31,894 INFO L290 TraceCheckUtils]: 32: Hoare triple {3011#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3011#true} is VALID [2022-04-28 01:17:31,894 INFO L290 TraceCheckUtils]: 33: Hoare triple {3011#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,894 INFO L290 TraceCheckUtils]: 34: Hoare triple {3011#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-28 01:17:31,895 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3011#true} {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} [119] __VERIFIER_assertEXIT-->L56: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-28 01:17:31,895 INFO L272 TraceCheckUtils]: 36: Hoare triple {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} [97] L56-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~a~0_17 v_main_~b~0_17) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_17, main_~a~0=v_main_~a~0_17} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {3126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:17:31,895 INFO L290 TraceCheckUtils]: 37: Hoare triple {3126#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:17:31,896 INFO L290 TraceCheckUtils]: 38: Hoare triple {3130#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3012#false} is VALID [2022-04-28 01:17:31,896 INFO L290 TraceCheckUtils]: 39: Hoare triple {3012#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3012#false} is VALID [2022-04-28 01:17:31,898 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-28 01:17:31,898 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:17:31,898 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:17:31,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [23983043] [2022-04-28 01:17:31,898 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:17:31,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1323824743] [2022-04-28 01:17:31,898 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1323824743] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:17:31,898 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:17:31,898 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 01:17:31,898 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [954766051] [2022-04-28 01:17:31,898 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:17:31,899 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-28 01:17:31,899 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:17:31,900 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-28 01:17:31,932 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-28 01:17:31,932 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 01:17:31,932 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:17:31,932 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 01:17:31,933 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-28 01:17:31,933 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-28 01:17:32,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:32,213 INFO L93 Difference]: Finished difference Result 141 states and 180 transitions. [2022-04-28 01:17:32,213 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 01:17:32,214 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-28 01:17:32,214 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:17:32,214 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-28 01:17:32,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-28 01:17:32,215 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-28 01:17:32,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-28 01:17:32,215 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 51 transitions. [2022-04-28 01:17:32,252 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-28 01:17:32,254 INFO L225 Difference]: With dead ends: 141 [2022-04-28 01:17:32,254 INFO L226 Difference]: Without dead ends: 129 [2022-04-28 01:17:32,254 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-28 01:17:32,255 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 7 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-28 01:17:32,255 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.1s Time] [2022-04-28 01:17:32,255 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-28 01:17:32,327 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 113. [2022-04-28 01:17:32,327 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:17:32,327 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-28 01:17:32,327 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-28 01:17:32,328 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-28 01:17:32,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:32,330 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-28 01:17:32,330 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-28 01:17:32,331 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:32,331 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:32,331 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-28 01:17:32,331 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-28 01:17:32,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:32,334 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-28 01:17:32,334 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-28 01:17:32,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:32,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:32,334 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:17:32,334 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:17:32,335 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-28 01:17:32,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 143 transitions. [2022-04-28 01:17:32,337 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 143 transitions. Word has length 40 [2022-04-28 01:17:32,337 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:17:32,337 INFO L495 AbstractCegarLoop]: Abstraction has 113 states and 143 transitions. [2022-04-28 01:17:32,337 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-28 01:17:32,337 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 143 transitions. [2022-04-28 01:17:32,338 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 01:17:32,338 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:17:32,338 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-28 01:17:32,354 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-28 01:17:32,551 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-28 01:17:32,551 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:17:32,552 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:17:32,552 INFO L85 PathProgramCache]: Analyzing trace with hash -837179280, now seen corresponding path program 1 times [2022-04-28 01:17:32,552 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:17:32,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [398895204] [2022-04-28 01:17:32,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:32,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:17:32,561 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:17:32,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1249362601] [2022-04-28 01:17:32,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:32,562 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:17:32,562 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:17:32,562 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-28 01:17:32,563 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-28 01:17:32,603 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:17:32,604 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-28 01:17:32,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:17:32,616 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:17:32,851 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 01:17:32,885 INFO L272 TraceCheckUtils]: 0: Hoare triple {3749#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {3749#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3749#true} is VALID [2022-04-28 01:17:32,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {3749#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3749#true} {3749#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,885 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,885 INFO L290 TraceCheckUtils]: 5: Hoare triple {3749#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:32,886 INFO L272 TraceCheckUtils]: 6: Hoare triple {3749#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {3749#true} is VALID [2022-04-28 01:17:32,886 INFO L290 TraceCheckUtils]: 7: Hoare triple {3749#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3775#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:17:32,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {3775#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3779#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:17:32,887 INFO L290 TraceCheckUtils]: 9: Hoare triple {3779#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3779#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:17:32,887 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3779#(not (= |assume_abort_if_not_#in~cond| 0))} {3749#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {3786#(<= 1 main_~y~0)} is VALID [2022-04-28 01:17:32,887 INFO L290 TraceCheckUtils]: 11: Hoare triple {3786#(<= 1 main_~y~0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {3790#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:32,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {3790#(<= 1 main_~b~0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3790#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:32,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {3790#(<= 1 main_~b~0)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3790#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:32,889 INFO L272 TraceCheckUtils]: 14: Hoare triple {3790#(<= 1 main_~b~0)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:32,889 INFO L290 TraceCheckUtils]: 15: Hoare triple {3749#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3749#true} is VALID [2022-04-28 01:17:32,889 INFO L290 TraceCheckUtils]: 16: Hoare triple {3749#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,889 INFO L290 TraceCheckUtils]: 17: Hoare triple {3749#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,890 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3749#true} {3790#(<= 1 main_~b~0)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3790#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:32,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {3790#(<= 1 main_~b~0)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {3790#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:32,890 INFO L290 TraceCheckUtils]: 20: Hoare triple {3790#(<= 1 main_~b~0)} [110] L39-->L43: Formula: (or (not (= (let ((.cse0 (mod v_main_~b~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~b~0_1 0)) (+ (- 2) .cse0) .cse0)) 0)) (not (= (let ((.cse1 (mod v_main_~a~0_1 2))) (ite (and (not (= .cse1 0)) (< v_main_~a~0_1 0)) (+ (- 2) .cse1) .cse1)) 0))) InVars {main_~b~0=v_main_~b~0_1, main_~a~0=v_main_~a~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[] {3790#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:32,891 INFO L290 TraceCheckUtils]: 21: Hoare triple {3790#(<= 1 main_~b~0)} [112] L43-->L46: Formula: (or (not (= 0 (let ((.cse0 (mod v_main_~b~0_3 2))) (ite (and (not (= .cse0 0)) (< v_main_~b~0_3 0)) (+ .cse0 (- 2)) .cse0)))) (not (= (let ((.cse1 (mod v_main_~a~0_4 2))) (ite (and (< v_main_~a~0_4 0) (not (= .cse1 0))) (+ .cse1 (- 2)) .cse1)) 1))) InVars {main_~b~0=v_main_~b~0_3, main_~a~0=v_main_~a~0_4} OutVars{main_~b~0=v_main_~b~0_3, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[] {3790#(<= 1 main_~b~0)} is VALID [2022-04-28 01:17:32,891 INFO L290 TraceCheckUtils]: 22: Hoare triple {3790#(<= 1 main_~b~0)} [114] L46-->L46-2: Formula: (and (or (not (= (let ((.cse0 (mod v_main_~b~0_8 2))) (ite (and (< v_main_~b~0_8 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) (not (= (let ((.cse1 (mod v_main_~a~0_8 2))) (ite (and (< v_main_~a~0_8 0) (not (= .cse1 0))) (+ (- 2) .cse1) .cse1)) 0))) (= v_main_~q~0_6 (+ v_main_~q~0_7 (* v_main_~p~0_4 (+ v_main_~a~0_7 v_main_~b~0_7 1)))) (= v_main_~a~0_7 (+ (- 1) v_main_~a~0_8)) (= v_main_~b~0_7 (+ (- 1) v_main_~b~0_8))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_4, main_~a~0=v_main_~a~0_8} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~p~0=v_main_~p~0_4, main_~a~0=v_main_~a~0_7} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~a~0] {3824#(<= 0 main_~b~0)} is VALID [2022-04-28 01:17:32,892 INFO L290 TraceCheckUtils]: 23: Hoare triple {3824#(<= 0 main_~b~0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3824#(<= 0 main_~b~0)} is VALID [2022-04-28 01:17:32,892 INFO L290 TraceCheckUtils]: 24: Hoare triple {3824#(<= 0 main_~b~0)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3824#(<= 0 main_~b~0)} is VALID [2022-04-28 01:17:32,892 INFO L272 TraceCheckUtils]: 25: Hoare triple {3824#(<= 0 main_~b~0)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:32,892 INFO L290 TraceCheckUtils]: 26: Hoare triple {3749#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3749#true} is VALID [2022-04-28 01:17:32,892 INFO L290 TraceCheckUtils]: 27: Hoare triple {3749#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,893 INFO L290 TraceCheckUtils]: 28: Hoare triple {3749#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,893 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3749#true} {3824#(<= 0 main_~b~0)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3824#(<= 0 main_~b~0)} is VALID [2022-04-28 01:17:32,894 INFO L290 TraceCheckUtils]: 30: Hoare triple {3824#(<= 0 main_~b~0)} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:17:32,894 INFO L272 TraceCheckUtils]: 31: Hoare triple {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {3749#true} is VALID [2022-04-28 01:17:32,894 INFO L290 TraceCheckUtils]: 32: Hoare triple {3749#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3749#true} is VALID [2022-04-28 01:17:32,894 INFO L290 TraceCheckUtils]: 33: Hoare triple {3749#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,894 INFO L290 TraceCheckUtils]: 34: Hoare triple {3749#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:32,895 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3749#true} {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} [119] __VERIFIER_assertEXIT-->L56: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:17:32,896 INFO L272 TraceCheckUtils]: 36: Hoare triple {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} [97] L56-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~a~0_17 v_main_~b~0_17) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_17, main_~a~0=v_main_~a~0_17} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:17:32,897 INFO L290 TraceCheckUtils]: 37: Hoare triple {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:17:32,897 INFO L290 TraceCheckUtils]: 38: Hoare triple {3872#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3750#false} is VALID [2022-04-28 01:17:32,897 INFO L290 TraceCheckUtils]: 39: Hoare triple {3750#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3750#false} is VALID [2022-04-28 01:17:32,897 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-28 01:17:32,897 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:17:33,088 INFO L290 TraceCheckUtils]: 39: Hoare triple {3750#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3750#false} is VALID [2022-04-28 01:17:33,088 INFO L290 TraceCheckUtils]: 38: Hoare triple {3872#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3750#false} is VALID [2022-04-28 01:17:33,089 INFO L290 TraceCheckUtils]: 37: Hoare triple {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:17:33,089 INFO L272 TraceCheckUtils]: 36: Hoare triple {3888#(= (* main_~b~0 main_~a~0) 0)} [97] L56-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~a~0_17 v_main_~b~0_17) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_17, main_~a~0=v_main_~a~0_17} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:17:33,090 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3749#true} {3888#(= (* main_~b~0 main_~a~0) 0)} [119] __VERIFIER_assertEXIT-->L56: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {3888#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-28 01:17:33,090 INFO L290 TraceCheckUtils]: 34: Hoare triple {3749#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,090 INFO L290 TraceCheckUtils]: 33: Hoare triple {3749#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,090 INFO L290 TraceCheckUtils]: 32: Hoare triple {3749#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3749#true} is VALID [2022-04-28 01:17:33,090 INFO L272 TraceCheckUtils]: 31: Hoare triple {3888#(= (* main_~b~0 main_~a~0) 0)} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {3749#true} is VALID [2022-04-28 01:17:33,091 INFO L290 TraceCheckUtils]: 30: Hoare triple {3749#true} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {3888#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-28 01:17:33,091 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3749#true} {3749#true} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:33,091 INFO L290 TraceCheckUtils]: 28: Hoare triple {3749#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 27: Hoare triple {3749#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 26: Hoare triple {3749#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L272 TraceCheckUtils]: 25: Hoare triple {3749#true} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 24: Hoare triple {3749#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 23: Hoare triple {3749#true} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 22: Hoare triple {3749#true} [114] L46-->L46-2: Formula: (and (or (not (= (let ((.cse0 (mod v_main_~b~0_8 2))) (ite (and (< v_main_~b~0_8 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) (not (= (let ((.cse1 (mod v_main_~a~0_8 2))) (ite (and (< v_main_~a~0_8 0) (not (= .cse1 0))) (+ (- 2) .cse1) .cse1)) 0))) (= v_main_~q~0_6 (+ v_main_~q~0_7 (* v_main_~p~0_4 (+ v_main_~a~0_7 v_main_~b~0_7 1)))) (= v_main_~a~0_7 (+ (- 1) v_main_~a~0_8)) (= v_main_~b~0_7 (+ (- 1) v_main_~b~0_8))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_4, main_~a~0=v_main_~a~0_8} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~p~0=v_main_~p~0_4, main_~a~0=v_main_~a~0_7} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 21: Hoare triple {3749#true} [112] L43-->L46: Formula: (or (not (= 0 (let ((.cse0 (mod v_main_~b~0_3 2))) (ite (and (not (= .cse0 0)) (< v_main_~b~0_3 0)) (+ .cse0 (- 2)) .cse0)))) (not (= (let ((.cse1 (mod v_main_~a~0_4 2))) (ite (and (< v_main_~a~0_4 0) (not (= .cse1 0))) (+ .cse1 (- 2)) .cse1)) 1))) InVars {main_~b~0=v_main_~b~0_3, main_~a~0=v_main_~a~0_4} OutVars{main_~b~0=v_main_~b~0_3, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 20: Hoare triple {3749#true} [110] L39-->L43: Formula: (or (not (= (let ((.cse0 (mod v_main_~b~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~b~0_1 0)) (+ (- 2) .cse0) .cse0)) 0)) (not (= (let ((.cse1 (mod v_main_~a~0_1 2))) (ite (and (not (= .cse1 0)) (< v_main_~a~0_1 0)) (+ (- 2) .cse1) .cse1)) 0))) InVars {main_~b~0=v_main_~b~0_1, main_~a~0=v_main_~a~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,092 INFO L290 TraceCheckUtils]: 19: Hoare triple {3749#true} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3749#true} {3749#true} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 17: Hoare triple {3749#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 16: Hoare triple {3749#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 15: Hoare triple {3749#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L272 TraceCheckUtils]: 14: Hoare triple {3749#true} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 13: Hoare triple {3749#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 12: Hoare triple {3749#true} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 11: Hoare triple {3749#true} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3749#true} {3749#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 9: Hoare triple {3749#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 8: Hoare triple {3749#true} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L290 TraceCheckUtils]: 7: Hoare triple {3749#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3749#true} is VALID [2022-04-28 01:17:33,093 INFO L272 TraceCheckUtils]: 6: Hoare triple {3749#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {3749#true} is VALID [2022-04-28 01:17:33,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {3749#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {3749#true} is VALID [2022-04-28 01:17:33,094 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,094 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3749#true} {3749#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {3749#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,094 INFO L290 TraceCheckUtils]: 1: Hoare triple {3749#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3749#true} is VALID [2022-04-28 01:17:33,094 INFO L272 TraceCheckUtils]: 0: Hoare triple {3749#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-28 01:17:33,094 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-28 01:17:33,094 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:17:33,094 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [398895204] [2022-04-28 01:17:33,094 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:17:33,094 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1249362601] [2022-04-28 01:17:33,095 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1249362601] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 01:17:33,095 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 01:17:33,095 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 01:17:33,095 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1721108688] [2022-04-28 01:17:33,095 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:17:33,096 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-28 01:17:33,096 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:17:33,096 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-28 01:17:33,115 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-28 01:17:33,115 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 01:17:33,115 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:17:33,116 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 01:17:33,116 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-28 01:17:33,116 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-28 01:17:33,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:33,488 INFO L93 Difference]: Finished difference Result 120 states and 149 transitions. [2022-04-28 01:17:33,488 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 01:17:33,488 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-28 01:17:33,488 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:17:33,488 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-28 01:17:33,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-28 01:17:33,489 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-28 01:17:33,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-28 01:17:33,489 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2022-04-28 01:17:33,517 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-28 01:17:33,518 INFO L225 Difference]: With dead ends: 120 [2022-04-28 01:17:33,518 INFO L226 Difference]: Without dead ends: 100 [2022-04-28 01:17:33,518 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-28 01:17:33,542 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-28 01:17:33,542 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-28 01:17:33,542 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-28 01:17:33,573 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 66. [2022-04-28 01:17:33,573 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:17:33,573 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-28 01:17:33,573 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-28 01:17:33,573 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-28 01:17:33,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:33,575 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-28 01:17:33,575 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-28 01:17:33,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:33,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:33,576 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-28 01:17:33,576 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-28 01:17:33,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:33,578 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-28 01:17:33,578 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-28 01:17:33,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:33,578 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:33,579 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:17:33,579 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:17:33,579 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-28 01:17:33,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 79 transitions. [2022-04-28 01:17:33,580 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 79 transitions. Word has length 40 [2022-04-28 01:17:33,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:17:33,580 INFO L495 AbstractCegarLoop]: Abstraction has 66 states and 79 transitions. [2022-04-28 01:17:33,580 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-28 01:17:33,580 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 79 transitions. [2022-04-28 01:17:33,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-28 01:17:33,581 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:17:33,581 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-28 01:17:33,599 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-28 01:17:33,781 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-28 01:17:33,782 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:17:33,782 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:17:33,782 INFO L85 PathProgramCache]: Analyzing trace with hash -1169624165, now seen corresponding path program 2 times [2022-04-28 01:17:33,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:17:33,782 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1184662978] [2022-04-28 01:17:33,782 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:33,782 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:17:33,793 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:17:33,793 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1078003945] [2022-04-28 01:17:33,793 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 01:17:33,793 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:17:33,793 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:17:33,794 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-28 01:17:33,795 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-28 01:17:33,904 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 01:17:33,904 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 01:17:33,905 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 01:17:33,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:17:33,919 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:17:34,246 INFO L272 TraceCheckUtils]: 0: Hoare triple {4453#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,247 INFO L290 TraceCheckUtils]: 1: Hoare triple {4453#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,247 INFO L290 TraceCheckUtils]: 2: Hoare triple {4461#(<= ~counter~0 0)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,247 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4461#(<= ~counter~0 0)} {4453#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,248 INFO L272 TraceCheckUtils]: 4: Hoare triple {4461#(<= ~counter~0 0)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,248 INFO L290 TraceCheckUtils]: 5: Hoare triple {4461#(<= ~counter~0 0)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,249 INFO L272 TraceCheckUtils]: 6: Hoare triple {4461#(<= ~counter~0 0)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,249 INFO L290 TraceCheckUtils]: 7: Hoare triple {4461#(<= ~counter~0 0)} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,252 INFO L290 TraceCheckUtils]: 8: Hoare triple {4461#(<= ~counter~0 0)} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,253 INFO L290 TraceCheckUtils]: 9: Hoare triple {4461#(<= ~counter~0 0)} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,254 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4461#(<= ~counter~0 0)} {4461#(<= ~counter~0 0)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,255 INFO L290 TraceCheckUtils]: 11: Hoare triple {4461#(<= ~counter~0 0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {4461#(<= ~counter~0 0)} is VALID [2022-04-28 01:17:34,255 INFO L290 TraceCheckUtils]: 12: Hoare triple {4461#(<= ~counter~0 0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,255 INFO L290 TraceCheckUtils]: 13: Hoare triple {4495#(<= ~counter~0 1)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,256 INFO L272 TraceCheckUtils]: 14: Hoare triple {4495#(<= ~counter~0 1)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,256 INFO L290 TraceCheckUtils]: 15: Hoare triple {4495#(<= ~counter~0 1)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,257 INFO L290 TraceCheckUtils]: 16: Hoare triple {4495#(<= ~counter~0 1)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,257 INFO L290 TraceCheckUtils]: 17: Hoare triple {4495#(<= ~counter~0 1)} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,260 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4495#(<= ~counter~0 1)} {4495#(<= ~counter~0 1)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,261 INFO L290 TraceCheckUtils]: 19: Hoare triple {4495#(<= ~counter~0 1)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {4495#(<= ~counter~0 1)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4495#(<= ~counter~0 1)} is VALID [2022-04-28 01:17:34,263 INFO L290 TraceCheckUtils]: 21: Hoare triple {4495#(<= ~counter~0 1)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,263 INFO L290 TraceCheckUtils]: 22: Hoare triple {4523#(<= ~counter~0 2)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,264 INFO L272 TraceCheckUtils]: 23: Hoare triple {4523#(<= ~counter~0 2)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,264 INFO L290 TraceCheckUtils]: 24: Hoare triple {4523#(<= ~counter~0 2)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,264 INFO L290 TraceCheckUtils]: 25: Hoare triple {4523#(<= ~counter~0 2)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,264 INFO L290 TraceCheckUtils]: 26: Hoare triple {4523#(<= ~counter~0 2)} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,265 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4523#(<= ~counter~0 2)} {4523#(<= ~counter~0 2)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,265 INFO L290 TraceCheckUtils]: 28: Hoare triple {4523#(<= ~counter~0 2)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,266 INFO L290 TraceCheckUtils]: 29: Hoare triple {4523#(<= ~counter~0 2)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4523#(<= ~counter~0 2)} is VALID [2022-04-28 01:17:34,266 INFO L290 TraceCheckUtils]: 30: Hoare triple {4523#(<= ~counter~0 2)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,267 INFO L290 TraceCheckUtils]: 31: Hoare triple {4551#(<= ~counter~0 3)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,267 INFO L272 TraceCheckUtils]: 32: Hoare triple {4551#(<= ~counter~0 3)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,267 INFO L290 TraceCheckUtils]: 33: Hoare triple {4551#(<= ~counter~0 3)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,268 INFO L290 TraceCheckUtils]: 34: Hoare triple {4551#(<= ~counter~0 3)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,268 INFO L290 TraceCheckUtils]: 35: Hoare triple {4551#(<= ~counter~0 3)} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,269 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4551#(<= ~counter~0 3)} {4551#(<= ~counter~0 3)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,269 INFO L290 TraceCheckUtils]: 37: Hoare triple {4551#(<= ~counter~0 3)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,269 INFO L290 TraceCheckUtils]: 38: Hoare triple {4551#(<= ~counter~0 3)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4551#(<= ~counter~0 3)} is VALID [2022-04-28 01:17:34,270 INFO L290 TraceCheckUtils]: 39: Hoare triple {4551#(<= ~counter~0 3)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,270 INFO L290 TraceCheckUtils]: 40: Hoare triple {4579#(<= ~counter~0 4)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,284 INFO L272 TraceCheckUtils]: 41: Hoare triple {4579#(<= ~counter~0 4)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,284 INFO L290 TraceCheckUtils]: 42: Hoare triple {4579#(<= ~counter~0 4)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,284 INFO L290 TraceCheckUtils]: 43: Hoare triple {4579#(<= ~counter~0 4)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,285 INFO L290 TraceCheckUtils]: 44: Hoare triple {4579#(<= ~counter~0 4)} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,285 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4579#(<= ~counter~0 4)} {4579#(<= ~counter~0 4)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,285 INFO L290 TraceCheckUtils]: 46: Hoare triple {4579#(<= ~counter~0 4)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,286 INFO L290 TraceCheckUtils]: 47: Hoare triple {4579#(<= ~counter~0 4)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4579#(<= ~counter~0 4)} is VALID [2022-04-28 01:17:34,286 INFO L290 TraceCheckUtils]: 48: Hoare triple {4579#(<= ~counter~0 4)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4607#(<= |main_#t~post6| 4)} is VALID [2022-04-28 01:17:34,287 INFO L290 TraceCheckUtils]: 49: Hoare triple {4607#(<= |main_#t~post6| 4)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4454#false} is VALID [2022-04-28 01:17:34,287 INFO L272 TraceCheckUtils]: 50: Hoare triple {4454#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {4454#false} is VALID [2022-04-28 01:17:34,287 INFO L290 TraceCheckUtils]: 51: Hoare triple {4454#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4454#false} is VALID [2022-04-28 01:17:34,287 INFO L290 TraceCheckUtils]: 52: Hoare triple {4454#false} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {4454#false} is VALID [2022-04-28 01:17:34,287 INFO L290 TraceCheckUtils]: 53: Hoare triple {4454#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4454#false} is VALID [2022-04-28 01:17:34,288 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-28 01:17:34,288 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:17:34,616 INFO L290 TraceCheckUtils]: 53: Hoare triple {4454#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4454#false} is VALID [2022-04-28 01:17:34,616 INFO L290 TraceCheckUtils]: 52: Hoare triple {4454#false} [101] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_3 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {4454#false} is VALID [2022-04-28 01:17:34,616 INFO L290 TraceCheckUtils]: 51: Hoare triple {4454#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4454#false} is VALID [2022-04-28 01:17:34,616 INFO L272 TraceCheckUtils]: 50: Hoare triple {4454#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {4454#false} is VALID [2022-04-28 01:17:34,617 INFO L290 TraceCheckUtils]: 49: Hoare triple {4635#(< |main_#t~post6| 10)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4454#false} is VALID [2022-04-28 01:17:34,617 INFO L290 TraceCheckUtils]: 48: Hoare triple {4639#(< ~counter~0 10)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4635#(< |main_#t~post6| 10)} is VALID [2022-04-28 01:17:34,618 INFO L290 TraceCheckUtils]: 47: Hoare triple {4639#(< ~counter~0 10)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4639#(< ~counter~0 10)} is VALID [2022-04-28 01:17:34,618 INFO L290 TraceCheckUtils]: 46: Hoare triple {4639#(< ~counter~0 10)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4639#(< ~counter~0 10)} is VALID [2022-04-28 01:17:34,619 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4453#true} {4639#(< ~counter~0 10)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4639#(< ~counter~0 10)} is VALID [2022-04-28 01:17:34,619 INFO L290 TraceCheckUtils]: 44: Hoare triple {4453#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,619 INFO L290 TraceCheckUtils]: 43: Hoare triple {4453#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,619 INFO L290 TraceCheckUtils]: 42: Hoare triple {4453#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4453#true} is VALID [2022-04-28 01:17:34,619 INFO L272 TraceCheckUtils]: 41: Hoare triple {4639#(< ~counter~0 10)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4453#true} is VALID [2022-04-28 01:17:34,624 INFO L290 TraceCheckUtils]: 40: Hoare triple {4639#(< ~counter~0 10)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4639#(< ~counter~0 10)} is VALID [2022-04-28 01:17:34,624 INFO L290 TraceCheckUtils]: 39: Hoare triple {4667#(< ~counter~0 9)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4639#(< ~counter~0 10)} is VALID [2022-04-28 01:17:34,625 INFO L290 TraceCheckUtils]: 38: Hoare triple {4667#(< ~counter~0 9)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4667#(< ~counter~0 9)} is VALID [2022-04-28 01:17:34,625 INFO L290 TraceCheckUtils]: 37: Hoare triple {4667#(< ~counter~0 9)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4667#(< ~counter~0 9)} is VALID [2022-04-28 01:17:34,626 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4453#true} {4667#(< ~counter~0 9)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4667#(< ~counter~0 9)} is VALID [2022-04-28 01:17:34,626 INFO L290 TraceCheckUtils]: 35: Hoare triple {4453#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,626 INFO L290 TraceCheckUtils]: 34: Hoare triple {4453#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,626 INFO L290 TraceCheckUtils]: 33: Hoare triple {4453#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4453#true} is VALID [2022-04-28 01:17:34,626 INFO L272 TraceCheckUtils]: 32: Hoare triple {4667#(< ~counter~0 9)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4453#true} is VALID [2022-04-28 01:17:34,626 INFO L290 TraceCheckUtils]: 31: Hoare triple {4667#(< ~counter~0 9)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4667#(< ~counter~0 9)} is VALID [2022-04-28 01:17:34,627 INFO L290 TraceCheckUtils]: 30: Hoare triple {4695#(< ~counter~0 8)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4667#(< ~counter~0 9)} is VALID [2022-04-28 01:17:34,627 INFO L290 TraceCheckUtils]: 29: Hoare triple {4695#(< ~counter~0 8)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4695#(< ~counter~0 8)} is VALID [2022-04-28 01:17:34,627 INFO L290 TraceCheckUtils]: 28: Hoare triple {4695#(< ~counter~0 8)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4695#(< ~counter~0 8)} is VALID [2022-04-28 01:17:34,628 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4453#true} {4695#(< ~counter~0 8)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4695#(< ~counter~0 8)} is VALID [2022-04-28 01:17:34,628 INFO L290 TraceCheckUtils]: 26: Hoare triple {4453#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,628 INFO L290 TraceCheckUtils]: 25: Hoare triple {4453#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,628 INFO L290 TraceCheckUtils]: 24: Hoare triple {4453#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4453#true} is VALID [2022-04-28 01:17:34,628 INFO L272 TraceCheckUtils]: 23: Hoare triple {4695#(< ~counter~0 8)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4453#true} is VALID [2022-04-28 01:17:34,629 INFO L290 TraceCheckUtils]: 22: Hoare triple {4695#(< ~counter~0 8)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4695#(< ~counter~0 8)} is VALID [2022-04-28 01:17:34,629 INFO L290 TraceCheckUtils]: 21: Hoare triple {4723#(< ~counter~0 7)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4695#(< ~counter~0 8)} is VALID [2022-04-28 01:17:34,629 INFO L290 TraceCheckUtils]: 20: Hoare triple {4723#(< ~counter~0 7)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {4723#(< ~counter~0 7)} is VALID [2022-04-28 01:17:34,630 INFO L290 TraceCheckUtils]: 19: Hoare triple {4723#(< ~counter~0 7)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {4723#(< ~counter~0 7)} is VALID [2022-04-28 01:17:34,630 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4453#true} {4723#(< ~counter~0 7)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4723#(< ~counter~0 7)} is VALID [2022-04-28 01:17:34,631 INFO L290 TraceCheckUtils]: 17: Hoare triple {4453#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,631 INFO L290 TraceCheckUtils]: 16: Hoare triple {4453#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,631 INFO L290 TraceCheckUtils]: 15: Hoare triple {4453#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4453#true} is VALID [2022-04-28 01:17:34,631 INFO L272 TraceCheckUtils]: 14: Hoare triple {4723#(< ~counter~0 7)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4453#true} is VALID [2022-04-28 01:17:34,631 INFO L290 TraceCheckUtils]: 13: Hoare triple {4723#(< ~counter~0 7)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4723#(< ~counter~0 7)} is VALID [2022-04-28 01:17:34,631 INFO L290 TraceCheckUtils]: 12: Hoare triple {4751#(< ~counter~0 6)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4723#(< ~counter~0 7)} is VALID [2022-04-28 01:17:34,632 INFO L290 TraceCheckUtils]: 11: Hoare triple {4751#(< ~counter~0 6)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {4751#(< ~counter~0 6)} is VALID [2022-04-28 01:17:34,632 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4453#true} {4751#(< ~counter~0 6)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {4751#(< ~counter~0 6)} is VALID [2022-04-28 01:17:34,632 INFO L290 TraceCheckUtils]: 9: Hoare triple {4453#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,632 INFO L290 TraceCheckUtils]: 8: Hoare triple {4453#true} [92] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,632 INFO L290 TraceCheckUtils]: 7: Hoare triple {4453#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4453#true} is VALID [2022-04-28 01:17:34,633 INFO L272 TraceCheckUtils]: 6: Hoare triple {4751#(< ~counter~0 6)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {4453#true} is VALID [2022-04-28 01:17:34,633 INFO L290 TraceCheckUtils]: 5: Hoare triple {4751#(< ~counter~0 6)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {4751#(< ~counter~0 6)} is VALID [2022-04-28 01:17:34,633 INFO L272 TraceCheckUtils]: 4: Hoare triple {4751#(< ~counter~0 6)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4751#(< ~counter~0 6)} is VALID [2022-04-28 01:17:34,633 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4751#(< ~counter~0 6)} {4453#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4751#(< ~counter~0 6)} is VALID [2022-04-28 01:17:34,634 INFO L290 TraceCheckUtils]: 2: Hoare triple {4751#(< ~counter~0 6)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4751#(< ~counter~0 6)} is VALID [2022-04-28 01:17:34,634 INFO L290 TraceCheckUtils]: 1: Hoare triple {4453#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {4751#(< ~counter~0 6)} is VALID [2022-04-28 01:17:34,634 INFO L272 TraceCheckUtils]: 0: Hoare triple {4453#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#true} is VALID [2022-04-28 01:17:34,635 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-28 01:17:34,635 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:17:34,635 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1184662978] [2022-04-28 01:17:34,635 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:17:34,638 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1078003945] [2022-04-28 01:17:34,638 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1078003945] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:17:34,638 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:17:34,638 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 01:17:34,639 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1631823807] [2022-04-28 01:17:34,639 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:17:34,640 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-28 01:17:34,640 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:17:34,641 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-28 01:17:34,709 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-28 01:17:34,709 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 01:17:34,709 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:17:34,709 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 01:17:34,709 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 01:17:34,710 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-28 01:17:35,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:35,248 INFO L93 Difference]: Finished difference Result 140 states and 177 transitions. [2022-04-28 01:17:35,248 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 01:17:35,249 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-28 01:17:35,249 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:17:35,249 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-28 01:17:35,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 174 transitions. [2022-04-28 01:17:35,263 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-28 01:17:35,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 174 transitions. [2022-04-28 01:17:35,266 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 174 transitions. [2022-04-28 01:17:35,382 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-28 01:17:35,386 INFO L225 Difference]: With dead ends: 140 [2022-04-28 01:17:35,387 INFO L226 Difference]: Without dead ends: 132 [2022-04-28 01:17:35,387 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=184, Invalid=322, Unknown=0, NotChecked=0, Total=506 [2022-04-28 01:17:35,388 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-28 01:17:35,393 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-28 01:17:35,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-28 01:17:35,445 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 132. [2022-04-28 01:17:35,445 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:17:35,446 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-28 01:17:35,446 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-28 01:17:35,446 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-28 01:17:35,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:35,455 INFO L93 Difference]: Finished difference Result 132 states and 163 transitions. [2022-04-28 01:17:35,455 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-28 01:17:35,455 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:35,456 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:35,456 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-28 01:17:35,456 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-28 01:17:35,458 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:17:35,458 INFO L93 Difference]: Finished difference Result 132 states and 163 transitions. [2022-04-28 01:17:35,458 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-28 01:17:35,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:17:35,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:17:35,458 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:17:35,458 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:17:35,459 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-28 01:17:35,460 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 163 transitions. [2022-04-28 01:17:35,460 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 163 transitions. Word has length 54 [2022-04-28 01:17:35,461 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:17:35,461 INFO L495 AbstractCegarLoop]: Abstraction has 132 states and 163 transitions. [2022-04-28 01:17:35,461 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-28 01:17:35,461 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-28 01:17:35,461 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 01:17:35,462 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:17:35,462 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-28 01:17:35,479 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 01:17:35,679 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-28 01:17:35,679 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:17:35,679 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:17:35,679 INFO L85 PathProgramCache]: Analyzing trace with hash 93180219, now seen corresponding path program 3 times [2022-04-28 01:17:35,679 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:17:35,679 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [136679459] [2022-04-28 01:17:35,679 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:17:35,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:17:35,710 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:17:35,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2007068428] [2022-04-28 01:17:35,710 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-28 01:17:35,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:17:35,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:17:35,723 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-28 01:17:35,729 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 01:17:35,853 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2022-04-28 01:17:35,853 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-28 01:17:35,853 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-28 01:17:35,884 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-28 01:17:35,976 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-28 01:17:35,977 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-28 01:17:35,977 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 01:17:35,997 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-04-28 01:17:36,197 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 01:17:36,200 INFO L356 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:17:36,206 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-28 01:17:36,286 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-28 01:17:36,287 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-28 01:17:36,288 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-28 01:17:36,288 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-28 01:17:36,288 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-28 01:17:36,288 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-28 01:17:36,288 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-28 01:17:36,288 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-28 01:17:36,288 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 01:17:36,288 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 01:17:36 BasicIcfg [2022-04-28 01:17:36,288 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 01:17:36,289 INFO L158 Benchmark]: Toolchain (without parser) took 142433.79ms. Allocated memory was 200.3MB in the beginning and 241.2MB in the end (delta: 40.9MB). Free memory was 146.6MB in the beginning and 158.2MB in the end (delta: -11.7MB). Peak memory consumption was 29.9MB. Max. memory is 8.0GB. [2022-04-28 01:17:36,289 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 200.3MB. Free memory is still 162.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 01:17:36,289 INFO L158 Benchmark]: CACSL2BoogieTranslator took 212.25ms. Allocated memory is still 200.3MB. Free memory was 146.3MB in the beginning and 173.0MB in the end (delta: -26.7MB). Peak memory consumption was 7.9MB. Max. memory is 8.0GB. [2022-04-28 01:17:36,289 INFO L158 Benchmark]: Boogie Preprocessor took 44.35ms. Allocated memory is still 200.3MB. Free memory was 173.0MB in the beginning and 171.4MB in the end (delta: 1.7MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 01:17:36,289 INFO L158 Benchmark]: RCFGBuilder took 334.02ms. Allocated memory is still 200.3MB. Free memory was 171.4MB in the beginning and 158.4MB in the end (delta: 13.0MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-28 01:17:36,290 INFO L158 Benchmark]: IcfgTransformer took 54.77ms. Allocated memory is still 200.3MB. Free memory was 158.4MB in the beginning and 156.3MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 01:17:36,290 INFO L158 Benchmark]: TraceAbstraction took 141770.77ms. Allocated memory was 200.3MB in the beginning and 241.2MB in the end (delta: 40.9MB). Free memory was 155.9MB in the beginning and 158.2MB in the end (delta: -2.4MB). Peak memory consumption was 39.8MB. Max. memory is 8.0GB. [2022-04-28 01:17:36,291 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 200.3MB. Free memory is still 162.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 212.25ms. Allocated memory is still 200.3MB. Free memory was 146.3MB in the beginning and 173.0MB in the end (delta: -26.7MB). Peak memory consumption was 7.9MB. Max. memory is 8.0GB. * Boogie Preprocessor took 44.35ms. Allocated memory is still 200.3MB. Free memory was 173.0MB in the beginning and 171.4MB in the end (delta: 1.7MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 334.02ms. Allocated memory is still 200.3MB. Free memory was 171.4MB in the beginning and 158.4MB in the end (delta: 13.0MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * IcfgTransformer took 54.77ms. Allocated memory is still 200.3MB. Free memory was 158.4MB in the beginning and 156.3MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 141770.77ms. Allocated memory was 200.3MB in the beginning and 241.2MB in the end (delta: 40.9MB). Free memory was 155.9MB in the beginning and 158.2MB in the end (delta: -2.4MB). Peak memory consumption was 39.8MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 14]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L19] int counter = 0; VAL [\old(counter)=15, counter=0] [L21] int x, y; [L22] long long a, b, p, q; [L24] x = __VERIFIER_nondet_int() [L25] y = __VERIFIER_nondet_int() [L26] CALL assume_abort_if_not(y >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L26] RET assume_abort_if_not(y >= 1) VAL [\old(counter)=0, counter=0, x=1024, y=1024] [L28] a = x [L29] b = y [L30] p = 1 [L31] q = 0 VAL [\old(counter)=0, a=1024, b=1024, counter=0, p=1, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=1024, b=1024, counter=1, counter++=0, p=1, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=1024, b=1024, counter=1, p=1, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=1024, b=1024, counter=1, p=1, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=512, b=512, counter=1, p=4, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=512, b=512, counter=2, counter++=1, p=4, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=512, b=512, counter=2, p=4, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=512, b=512, counter=2, p=4, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=256, b=256, counter=2, p=16, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=256, b=256, counter=3, counter++=2, p=16, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=256, b=256, counter=3, p=16, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=256, b=256, counter=3, p=16, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=128, b=128, counter=3, p=64, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=128, b=128, counter=4, counter++=3, p=64, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=128, b=128, counter=4, p=64, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=128, b=128, counter=4, p=64, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=64, b=64, counter=4, p=256, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=64, b=64, counter=5, counter++=4, p=256, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=64, b=64, counter=5, p=256, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=64, b=64, counter=5, p=256, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=32, b=32, counter=5, p=1024, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=32, b=32, counter=6, counter++=5, p=1024, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=6] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=6] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=32, b=32, counter=6, p=1024, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=32, b=32, counter=6, p=1024, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=16, b=16, counter=6, p=4096, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=16, b=16, counter=7, counter++=6, p=4096, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=7] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=7] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=16, b=16, counter=7, p=4096, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=16, b=16, counter=7, p=4096, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=8, b=8, counter=7, p=16384, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=8, b=8, counter=8, counter++=7, p=16384, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=8] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=8] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=8, b=8, counter=8, p=16384, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=8, b=8, counter=8, p=16384, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=4, b=4, counter=8, p=65536, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=4, counter=9, counter++=8, p=65536, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=4, b=4, counter=9, p=65536, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=4, b=4, counter=9, p=65536, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=2, b=2, counter=9, p=262144, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=2, counter=10, counter++=9, p=262144, q=0, x=1024, y=1024] [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=10] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=10] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=2, b=2, counter=10, p=262144, q=0, x=1024, y=1024] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=2, b=2, counter=10, p=262144, q=0, x=1024, y=1024] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=1, b=1, counter=10, p=1048576, q=0, x=1024, y=1024] [L33] EXPR counter++ VAL [\old(counter)=0, a=1, b=1, counter=11, counter++=10, p=1048576, q=0, x=1024, y=1024] [L33] COND FALSE !(counter++<10) [L56] CALL __VERIFIER_assert(q == (long long) x * y) VAL [\old(cond)=0, \old(counter)=0, counter=11] [L12] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] [L14] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 141.6s, OverallIterations: 11, TraceHistogramMax: 11, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 12.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 505 SdHoareTripleChecker+Valid, 4.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 492 mSDsluCounter, 1272 SdHoareTripleChecker+Invalid, 4.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 962 mSDsCounter, 197 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 844 IncrementalHoareTripleChecker+Invalid, 1041 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 197 mSolverCounterUnsat, 310 mSDtfsCounter, 844 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 477 GetRequests, 373 SyntacticMatches, 3 SemanticMatches, 101 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 196 ImplicationChecksByTransitivity, 1.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=132occurred in iteration=10, InterpolantAutomatonStates: 91, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.5s AutomataMinimizationTime, 10 MinimizatonAttempts, 124 StatesRemovedByMinimization, 8 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 122.8s InterpolantComputationTime, 402 NumberOfCodeBlocks, 402 NumberOfCodeBlocksAsserted, 22 NumberOfCheckSat, 451 ConstructedInterpolants, 0 QuantifiedInterpolants, 1538 SizeOfPredicates, 30 NumberOfNonLiveVariables, 1048 ConjunctsInSsa, 116 ConjunctsInUnsatCore, 15 InterpolantComputations, 6 PerfectInterpolantSequences, 118/236 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-28 01:17:36,330 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...