/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_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 04:15:58,793 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 04:15:58,794 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 04:15:58,831 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 04:15:58,831 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 04:15:58,832 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 04:15:58,833 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 04:15:58,835 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 04:15:58,836 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 04:15:58,837 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 04:15:58,837 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 04:15:58,838 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 04:15:58,839 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 04:15:58,847 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 04:15:58,848 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 04:15:58,852 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 04:15:58,852 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 04:15:58,855 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 04:15:58,860 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 04:15:58,861 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 04:15:58,862 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 04:15:58,863 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 04:15:58,864 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 04:15:58,864 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 04:15:58,865 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 04:15:58,867 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 04:15:58,867 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 04:15:58,868 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 04:15:58,868 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 04:15:58,868 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 04:15:58,869 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 04:15:58,869 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 04:15:58,870 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 04:15:58,870 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 04:15:58,871 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 04:15:58,872 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 04:15:58,872 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 04:15:58,872 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 04:15:58,873 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 04:15:58,873 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 04:15:58,874 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 04:15:58,874 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 04:15:58,875 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-15 04:15:58,900 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 04:15:58,900 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 04:15:58,901 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-15 04:15:58,901 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-15 04:15:58,902 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-15 04:15:58,902 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-15 04:15:58,902 INFO L138 SettingsManager]: * Use SBE=true [2022-04-15 04:15:58,902 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 04:15:58,902 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 04:15:58,903 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 04:15:58,903 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 04:15:58,903 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 04:15:58,903 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 04:15:58,903 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 04:15:58,903 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 04:15:58,904 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 04:15:58,904 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 04:15:58,904 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 04:15:58,904 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 04:15:58,904 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 04:15:58,905 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 04:15:58,905 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-15 04:15:58,905 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-15 04:15:58,905 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-15 04:15:58,905 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-15 04:15:58,905 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 04:15:58,906 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-15 04:15:58,906 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-15 04:15:58,906 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-15 04:15:58,906 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-15 04:15:59,145 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 04:15:59,170 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 04:15:59,172 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 04:15:59,173 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 04:15:59,175 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 04:15:59,177 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-15 04:15:59,234 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/24e46c70c/8739d8ca63ef4b908299bca1fbf90874/FLAG12cea0793 [2022-04-15 04:15:59,680 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 04:15:59,680 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-15 04:15:59,686 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/24e46c70c/8739d8ca63ef4b908299bca1fbf90874/FLAG12cea0793 [2022-04-15 04:16:00,075 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/24e46c70c/8739d8ca63ef4b908299bca1fbf90874 [2022-04-15 04:16:00,079 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 04:16:00,081 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-15 04:16:00,082 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 04:16:00,082 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 04:16:00,086 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 04:16:00,087 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,088 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4a163384 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00, skipping insertion in model container [2022-04-15 04:16:00,088 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,094 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 04:16:00,110 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 04:16:00,256 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c[524,537] [2022-04-15 04:16:00,284 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 04:16:00,291 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 04:16:00,301 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c[524,537] [2022-04-15 04:16:00,309 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 04:16:00,320 INFO L208 MainTranslator]: Completed translation [2022-04-15 04:16:00,320 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00 WrapperNode [2022-04-15 04:16:00,320 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 04:16:00,321 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 04:16:00,322 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 04:16:00,322 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 04:16:00,331 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,331 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,348 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,348 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,354 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,358 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,359 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,361 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 04:16:00,361 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 04:16:00,362 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 04:16:00,362 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 04:16:00,364 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,374 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 04:16:00,382 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:16:00,391 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-15 04:16:00,393 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-15 04:16:00,418 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 04:16:00,418 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 04:16:00,419 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 04:16:00,419 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 04:16:00,419 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 04:16:00,420 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 04:16:00,420 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 04:16:00,420 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 04:16:00,422 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 04:16:00,422 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 04:16:00,423 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 04:16:00,424 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 04:16:00,480 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 04:16:00,481 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 04:16:00,707 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 04:16:00,712 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 04:16:00,712 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 04:16:00,714 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 04:16:00 BoogieIcfgContainer [2022-04-15 04:16:00,714 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 04:16:00,714 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-15 04:16:00,714 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-15 04:16:00,715 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-15 04:16:00,722 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 04:16:00" (1/1) ... [2022-04-15 04:16:00,724 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-15 04:16:00,777 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 04:16:00 BasicIcfg [2022-04-15 04:16:00,777 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-15 04:16:00,778 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 04:16:00,778 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 04:16:00,781 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 04:16:00,781 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 04:16:00" (1/4) ... [2022-04-15 04:16:00,782 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7210f99b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 04:16:00, skipping insertion in model container [2022-04-15 04:16:00,782 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:16:00" (2/4) ... [2022-04-15 04:16:00,782 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7210f99b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 04:16:00, skipping insertion in model container [2022-04-15 04:16:00,782 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 04:16:00" (3/4) ... [2022-04-15 04:16:00,783 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7210f99b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 04:16:00, skipping insertion in model container [2022-04-15 04:16:00,783 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 04:16:00" (4/4) ... [2022-04-15 04:16:00,784 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound20.cqvasr [2022-04-15 04:16:00,788 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-15 04:16:00,788 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 04:16:00,819 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 04:16:00,825 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=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 [2022-04-15 04:16:00,825 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 04:16:00,841 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-15 04:16:00,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-15 04:16:00,846 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:16:00,846 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:16:00,847 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:16:00,851 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:16:00,851 INFO L85 PathProgramCache]: Analyzing trace with hash -1119019339, now seen corresponding path program 1 times [2022-04-15 04:16:00,859 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:16:00,859 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1353262834] [2022-04-15 04:16:00,859 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:16:00,860 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:16:00,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:01,035 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 04:16:01,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:01,059 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-15 04:16:01,060 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-15 04:16:01,060 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-15 04:16:01,061 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 04:16:01,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:01,081 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-15 04:16:01,082 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [91] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-15 04:16:01,082 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-15 04:16:01,082 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-15 04:16:01,084 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-15 04:16:01,084 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-15 04:16:01,084 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-15 04:16:01,085 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-15 04:16:01,085 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-15 04:16:01,085 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-15 04:16:01,086 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-15 04:16:01,086 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-15 04:16:01,086 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [91] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-15 04:16:01,087 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-15 04:16:01,087 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-15 04:16:01,087 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-15 04:16:01,088 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-15 04:16:01,088 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-15 04:16:01,088 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-15 04:16:01,088 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-15 04:16:01,089 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-15 04:16:01,089 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-15 04:16:01,090 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:16:01,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1353262834] [2022-04-15 04:16:01,091 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1353262834] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:16:01,091 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:16:01,091 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 04:16:01,092 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [821633923] [2022-04-15 04:16:01,093 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:16:01,097 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-15 04:16:01,098 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:16:01,102 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-15 04:16:01,138 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-15 04:16:01,139 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 04:16:01,139 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:16:01,165 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 04:16:01,166 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 04:16:01,170 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-15 04:16:01,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:01,331 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-15 04:16:01,332 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 04:16:01,332 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-15 04:16:01,332 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:16:01,333 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-15 04:16:01,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-15 04:16:01,342 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-15 04:16:01,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-15 04:16:01,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-15 04:16:01,424 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-15 04:16:01,431 INFO L225 Difference]: With dead ends: 56 [2022-04-15 04:16:01,431 INFO L226 Difference]: Without dead ends: 28 [2022-04-15 04:16:01,434 INFO L912 BasicCegarLoop]: 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-15 04:16:01,437 INFO L913 BasicCegarLoop]: 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-15 04:16:01,437 INFO L914 BasicCegarLoop]: 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-15 04:16:01,450 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-15 04:16:01,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-15 04:16:01,462 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:16:01,462 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-15 04:16:01,463 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-15 04:16:01,463 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-15 04:16:01,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:01,467 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-15 04:16:01,467 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-15 04:16:01,468 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:16:01,468 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:16:01,468 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-15 04:16:01,469 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-15 04:16:01,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:01,472 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-15 04:16:01,472 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-15 04:16:01,472 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:16:01,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:16:01,473 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:16:01,473 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:16:01,473 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-15 04:16:01,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-15 04:16:01,476 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-15 04:16:01,477 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:16:01,477 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-15 04:16:01,477 INFO L479 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-15 04:16:01,477 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-15 04:16:01,478 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 04:16:01,478 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:16:01,478 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:16:01,478 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 04:16:01,478 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:16:01,479 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:16:01,479 INFO L85 PathProgramCache]: Analyzing trace with hash -496973861, now seen corresponding path program 1 times [2022-04-15 04:16:01,479 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:16:01,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [837416804] [2022-04-15 04:16:01,479 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:16:01,480 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:16:01,502 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:16:01,503 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1031981456] [2022-04-15 04:16:01,507 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:16:01,507 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:16:01,507 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:16:01,511 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-15 04:16:01,543 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-15 04:16:01,563 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:01,565 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 04:16:01,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:01,578 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:16:01,720 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-15 04:16:01,721 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-15 04:16:01,722 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-15 04:16:01,722 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-15 04:16:01,723 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-15 04:16:01,723 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-15 04:16:01,724 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-15 04:16:01,724 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-15 04:16:01,725 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-15 04:16:01,725 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-15 04:16:01,726 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-15 04:16:01,727 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-15 04:16:01,727 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-15 04:16:01,728 INFO L290 TraceCheckUtils]: 13: Hoare triple {256#(<= |main_#t~post6| 0)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 20)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {215#false} is VALID [2022-04-15 04:16:01,728 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-15 04:16:01,728 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-15 04:16:01,728 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-15 04:16:01,729 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-15 04:16:01,729 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-15 04:16:01,729 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:16:01,729 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:16:01,729 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [837416804] [2022-04-15 04:16:01,729 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:16:01,730 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1031981456] [2022-04-15 04:16:01,730 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1031981456] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:16:01,732 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:16:01,732 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 04:16:01,733 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1602355428] [2022-04-15 04:16:01,733 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:16:01,734 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-15 04:16:01,734 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:16:01,734 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-15 04:16:01,757 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-15 04:16:01,757 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 04:16:01,757 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:16:01,758 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 04:16:01,758 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 04:16:01,759 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-15 04:16:01,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:01,840 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-15 04:16:01,840 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 04:16:01,840 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-15 04:16:01,841 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:16:01,841 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-15 04:16:01,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-15 04:16:01,851 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-15 04:16:01,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-15 04:16:01,853 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-15 04:16:01,908 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-15 04:16:01,910 INFO L225 Difference]: With dead ends: 37 [2022-04-15 04:16:01,910 INFO L226 Difference]: Without dead ends: 29 [2022-04-15 04:16:01,911 INFO L912 BasicCegarLoop]: 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-15 04:16:01,913 INFO L913 BasicCegarLoop]: 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-15 04:16:01,914 INFO L914 BasicCegarLoop]: 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-15 04:16:01,916 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-15 04:16:01,925 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-15 04:16:01,925 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:16:01,926 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-15 04:16:01,927 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-15 04:16:01,927 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-15 04:16:01,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:01,931 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 04:16:01,931 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 04:16:01,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:16:01,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:16:01,934 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-15 04:16:01,934 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-15 04:16:01,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:01,938 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 04:16:01,939 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 04:16:01,939 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:16:01,939 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:16:01,940 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:16:01,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:16:01,940 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-15 04:16:01,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-15 04:16:01,946 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-15 04:16:01,947 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:16:01,947 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-15 04:16:01,947 INFO L479 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-15 04:16:01,947 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 04:16:01,948 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 04:16:01,949 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:16:01,949 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:16:01,974 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 04:16:02,171 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:16:02,171 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:16:02,172 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:16:02,172 INFO L85 PathProgramCache]: Analyzing trace with hash -495871594, now seen corresponding path program 1 times [2022-04-15 04:16:02,172 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:16:02,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1151421114] [2022-04-15 04:16:02,173 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:16:02,173 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:16:02,188 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:16:02,188 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [602300800] [2022-04-15 04:16:02,188 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:16:02,188 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:16:02,189 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:16:02,191 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-15 04:16:02,193 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-15 04:16:02,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:02,230 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 04:16:02,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:02,238 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:16:02,353 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-15 04:16:02,353 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-15 04:16:02,353 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-15 04:16:02,353 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-15 04:16:02,354 INFO L272 TraceCheckUtils]: 4: Hoare triple {422#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {422#true} is VALID [2022-04-15 04:16:02,354 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-15 04:16:02,354 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-15 04:16:02,354 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-15 04:16:02,355 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-15 04:16:02,355 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-15 04:16:02,355 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-15 04:16:02,356 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-15 04:16:02,356 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-15 04:16:02,357 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| 20) 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-15 04:16:02,358 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-15 04:16:02,358 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-15 04:16:02,359 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-15 04:16:02,359 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-15 04:16:02,359 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-15 04:16:02,359 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:16:02,360 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:16:02,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1151421114] [2022-04-15 04:16:02,360 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:16:02,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [602300800] [2022-04-15 04:16:02,360 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [602300800] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:16:02,360 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:16:02,360 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 04:16:02,361 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [499714851] [2022-04-15 04:16:02,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:16:02,361 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-15 04:16:02,361 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:16:02,362 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-15 04:16:02,376 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-15 04:16:02,376 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 04:16:02,376 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:16:02,377 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 04:16:02,377 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 04:16:02,377 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-15 04:16:02,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:02,578 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-15 04:16:02,578 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 04:16:02,578 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-15 04:16:02,578 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:16:02,578 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-15 04:16:02,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 04:16:02,583 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-15 04:16:02,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 04:16:02,591 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-15 04:16:02,647 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-15 04:16:02,648 INFO L225 Difference]: With dead ends: 42 [2022-04-15 04:16:02,648 INFO L226 Difference]: Without dead ends: 40 [2022-04-15 04:16:02,649 INFO L912 BasicCegarLoop]: 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-15 04:16:02,650 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 04:16:02,650 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 04:16:02,651 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-15 04:16:02,658 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-15 04:16:02,658 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:16:02,659 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-15 04:16:02,659 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-15 04:16:02,659 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-15 04:16:02,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:02,661 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-15 04:16:02,661 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-15 04:16:02,662 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:16:02,662 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:16:02,662 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-15 04:16:02,663 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-15 04:16:02,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:16:02,665 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-15 04:16:02,665 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-15 04:16:02,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:16:02,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:16:02,665 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:16:02,666 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:16:02,666 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-15 04:16:02,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-15 04:16:02,667 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-15 04:16:02,667 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:16:02,668 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-15 04:16:02,668 INFO L479 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-15 04:16:02,668 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-15 04:16:02,668 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-15 04:16:02,668 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:16:02,669 INFO L499 BasicCegarLoop]: 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-15 04:16:02,691 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-15 04:16:02,883 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-15 04:16:02,884 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:16:02,884 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:16:02,884 INFO L85 PathProgramCache]: Analyzing trace with hash -1025358414, now seen corresponding path program 1 times [2022-04-15 04:16:02,885 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:16:02,885 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [230579756] [2022-04-15 04:16:02,885 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:16:02,885 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:16:02,900 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:16:02,900 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [764555693] [2022-04-15 04:16:02,900 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:16:02,900 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:16:02,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:16:02,901 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-15 04:16:02,939 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-15 04:16:02,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:02,958 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 04:16:02,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:16:02,971 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:16:13,501 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-15 04:16:13,502 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-15 04:16:13,502 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-15 04:16:13,503 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-15 04:16:13,503 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-15 04:16:13,503 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-15 04:16:13,503 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-15 04:16:13,504 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-15 04:16:13,504 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-15 04:16:13,505 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-15 04:16:13,508 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-15 04:16:13,509 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-15 04:16:13,516 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-15 04:16:13,517 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| 20) 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-15 04:16:13,517 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-15 04:16:13,518 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-15 04:16:13,518 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-15 04:16:13,518 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-15 04:16:15,523 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-15 04:16:15,524 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-15 04:16:15,525 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-15 04:16:15,525 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-15 04:16:15,526 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-15 04:16:15,526 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-15 04:16:15,526 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-15 04:16:15,526 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:16:57,440 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-15 04:16:57,441 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-15 04:16:57,442 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-15 04:16:57,443 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-15 04:16:57,444 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-15 04:16:57,446 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-15 04:16:57,446 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-15 04:16:57,447 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-15 04:16:57,451 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-15 04:16:57,452 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-15 04:16:57,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {668#true} is VALID [2022-04-15 04:16:57,452 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-15 04:16:57,452 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-15 04:16:57,452 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-15 04:16:57,452 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-15 04:16:57,453 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-15 04:16:57,453 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-15 04:16:57,453 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-15 04:16:57,456 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-15 04:16:57,456 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {668#true} is VALID [2022-04-15 04:16:57,456 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-15 04:16:57,456 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-15 04:16:57,456 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-15 04:16:57,458 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-15 04:16:57,458 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-15 04:16:57,458 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:16:57,458 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [230579756] [2022-04-15 04:16:57,458 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:16:57,458 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [764555693] [2022-04-15 04:16:57,458 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [764555693] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:16:57,458 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:16:57,458 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-15 04:16:57,459 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1169523664] [2022-04-15 04:16:57,459 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:16:57,460 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-15 04:16:57,460 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:16:57,460 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-15 04:16:59,493 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-15 04:16:59,494 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-15 04:16:59,494 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:16:59,494 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-15 04:16:59,495 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-15 04:16:59,495 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-15 04:17:02,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:17:02,998 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-15 04:17:02,998 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 04:17:02,999 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-15 04:17:02,999 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:17:02,999 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-15 04:17:03,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-15 04:17:03,002 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-15 04:17:03,004 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-15 04:17:03,004 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 69 transitions. [2022-04-15 04:17:05,072 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-15 04:17:05,074 INFO L225 Difference]: With dead ends: 55 [2022-04-15 04:17:05,074 INFO L226 Difference]: Without dead ends: 53 [2022-04-15 04:17:05,075 INFO L912 BasicCegarLoop]: 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-15 04:17:05,076 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 51 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 199 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 230 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 199 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-15 04:17:05,076 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 123 Invalid, 230 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 199 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-15 04:17:05,076 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-15 04:17:05,092 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 39. [2022-04-15 04:17:05,092 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:17:05,093 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-15 04:17:05,093 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-15 04:17:05,093 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-15 04:17:05,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:17:05,096 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-15 04:17:05,096 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-15 04:17:05,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:17:05,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:17:05,097 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-15 04:17:05,097 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-15 04:17:05,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:17:05,100 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-15 04:17:05,100 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-15 04:17:05,100 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:17:05,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:17:05,101 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:17:05,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:17:05,101 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-15 04:17:05,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 45 transitions. [2022-04-15 04:17:05,102 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 45 transitions. Word has length 24 [2022-04-15 04:17:05,103 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:17:05,103 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 45 transitions. [2022-04-15 04:17:05,103 INFO L479 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-15 04:17:05,103 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-15 04:17:05,104 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-15 04:17:05,104 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:17:05,104 INFO L499 BasicCegarLoop]: 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-15 04:17:05,127 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-15 04:17:05,319 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:17:05,320 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:17:05,320 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:17:05,320 INFO L85 PathProgramCache]: Analyzing trace with hash -2117889998, now seen corresponding path program 1 times [2022-04-15 04:17:05,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:17:05,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1279552868] [2022-04-15 04:17:05,320 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:17:05,320 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:17:05,341 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:17:05,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [809275032] [2022-04-15 04:17:05,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:17:05,341 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:17:05,341 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:17:05,344 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-15 04:17:05,345 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-15 04:17:05,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:17:05,391 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 04:17:05,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:17:05,401 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:17:05,540 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-15 04:17:05,541 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-15 04:17:05,542 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-15 04:17:05,542 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-15 04:17:05,543 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-15 04:17:05,543 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-15 04:17:05,544 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-15 04:17:05,545 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-15 04:17:05,545 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-15 04:17:05,545 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-15 04:17:05,546 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-15 04:17:05,547 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-15 04:17:05,547 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-15 04:17:05,548 INFO L290 TraceCheckUtils]: 13: Hoare triple {1119#(<= ~counter~0 1)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1119#(<= ~counter~0 1)} is VALID [2022-04-15 04:17:05,549 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-15 04:17:05,549 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-15 04:17:05,550 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-15 04:17:05,550 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-15 04:17:05,551 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-15 04:17:05,551 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-15 04:17:05,552 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-15 04:17:05,552 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-15 04:17:05,553 INFO L290 TraceCheckUtils]: 22: Hoare triple {1147#(<= |main_#t~post6| 1)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 20)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1078#false} is VALID [2022-04-15 04:17:05,553 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-15 04:17:05,553 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-15 04:17:05,553 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-15 04:17:05,553 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-15 04:17:05,554 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-15 04:17:05,554 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:17:05,735 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-15 04:17:05,735 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-15 04:17:05,735 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-15 04:17:05,735 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-15 04:17:05,735 INFO L290 TraceCheckUtils]: 22: Hoare triple {1175#(< |main_#t~post6| 20)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 20)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1078#false} is VALID [2022-04-15 04:17:05,736 INFO L290 TraceCheckUtils]: 21: Hoare triple {1179#(< ~counter~0 20)} [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| 20)} is VALID [2022-04-15 04:17:05,736 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#(< ~counter~0 20)} [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 20)} is VALID [2022-04-15 04:17:05,736 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#(< ~counter~0 20)} [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 20)} is VALID [2022-04-15 04:17:05,737 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1077#true} {1179#(< ~counter~0 20)} [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 20)} is VALID [2022-04-15 04:17:05,737 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-15 04:17:05,738 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-15 04:17:05,738 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-15 04:17:05,738 INFO L272 TraceCheckUtils]: 14: Hoare triple {1179#(< ~counter~0 20)} [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-15 04:17:05,738 INFO L290 TraceCheckUtils]: 13: Hoare triple {1179#(< ~counter~0 20)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1179#(< ~counter~0 20)} is VALID [2022-04-15 04:17:05,739 INFO L290 TraceCheckUtils]: 12: Hoare triple {1207#(< ~counter~0 19)} [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 20)} is VALID [2022-04-15 04:17:05,739 INFO L290 TraceCheckUtils]: 11: Hoare triple {1207#(< ~counter~0 19)} [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 19)} is VALID [2022-04-15 04:17:05,740 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1077#true} {1207#(< ~counter~0 19)} [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 19)} is VALID [2022-04-15 04:17:05,740 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-15 04:17:05,740 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-15 04:17:05,740 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-15 04:17:05,740 INFO L272 TraceCheckUtils]: 6: Hoare triple {1207#(< ~counter~0 19)} [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-15 04:17:05,741 INFO L290 TraceCheckUtils]: 5: Hoare triple {1207#(< ~counter~0 19)} [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 19)} is VALID [2022-04-15 04:17:05,741 INFO L272 TraceCheckUtils]: 4: Hoare triple {1207#(< ~counter~0 19)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1207#(< ~counter~0 19)} is VALID [2022-04-15 04:17:05,742 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1207#(< ~counter~0 19)} {1077#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1207#(< ~counter~0 19)} is VALID [2022-04-15 04:17:05,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {1207#(< ~counter~0 19)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1207#(< ~counter~0 19)} is VALID [2022-04-15 04:17:05,743 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 19)} is VALID [2022-04-15 04:17:05,743 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-15 04:17:05,743 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-15 04:17:05,743 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:17:05,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1279552868] [2022-04-15 04:17:05,743 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:17:05,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [809275032] [2022-04-15 04:17:05,743 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [809275032] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:17:05,744 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:17:05,744 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 04:17:05,744 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [189700746] [2022-04-15 04:17:05,744 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:17:05,745 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-15 04:17:05,745 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:17:05,745 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-15 04:17:05,778 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-15 04:17:05,778 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 04:17:05,778 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:17:05,778 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 04:17:05,779 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 04:17:05,779 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-15 04:17:06,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:17:06,032 INFO L93 Difference]: Finished difference Result 103 states and 123 transitions. [2022-04-15 04:17:06,032 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 04:17:06,032 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-15 04:17:06,032 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:17:06,033 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-15 04:17:06,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-15 04:17:06,035 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-15 04:17:06,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-15 04:17:06,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-15 04:17:06,129 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-15 04:17:06,131 INFO L225 Difference]: With dead ends: 103 [2022-04-15 04:17:06,132 INFO L226 Difference]: Without dead ends: 93 [2022-04-15 04:17:06,132 INFO L912 BasicCegarLoop]: 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-15 04:17:06,133 INFO L913 BasicCegarLoop]: 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-15 04:17:06,133 INFO L914 BasicCegarLoop]: 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-15 04:17:06,134 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-15 04:17:06,201 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 87. [2022-04-15 04:17:06,201 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:17:06,202 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-15 04:17:06,202 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-15 04:17:06,203 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-15 04:17:06,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:17:06,206 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-15 04:17:06,206 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-15 04:17:06,206 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:17:06,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:17:06,207 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-15 04:17:06,207 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-15 04:17:06,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:17:06,210 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-15 04:17:06,210 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-15 04:17:06,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:17:06,211 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:17:06,211 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:17:06,211 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:17:06,211 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-15 04:17:06,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 107 transitions. [2022-04-15 04:17:06,214 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 107 transitions. Word has length 27 [2022-04-15 04:17:06,214 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:17:06,215 INFO L478 AbstractCegarLoop]: Abstraction has 87 states and 107 transitions. [2022-04-15 04:17:06,215 INFO L479 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-15 04:17:06,215 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 107 transitions. [2022-04-15 04:17:06,215 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-15 04:17:06,215 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:17:06,216 INFO L499 BasicCegarLoop]: 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-15 04:17:06,246 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-15 04:17:06,435 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:17:06,435 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:17:06,436 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:17:06,436 INFO L85 PathProgramCache]: Analyzing trace with hash -2116787731, now seen corresponding path program 1 times [2022-04-15 04:17:06,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:17:06,436 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [290833706] [2022-04-15 04:17:06,436 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:17:06,436 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:17:06,451 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:17:06,451 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1341980454] [2022-04-15 04:17:06,451 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:17:06,451 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:17:06,451 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:17:06,452 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-15 04:17:06,461 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-15 04:17:06,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:17:06,502 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-15 04:17:06,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:17:06,514 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:17:07,683 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-15 04:17:07,683 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-15 04:17:07,683 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-15 04:17:07,684 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-15 04:17:07,684 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-15 04:17:07,684 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-15 04:17:07,684 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-15 04:17:07,687 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-15 04:17:07,688 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-15 04:17:07,688 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-15 04:17:07,689 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-15 04:17:07,690 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-15 04:17:07,691 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-15 04:17:07,692 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| 20) 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-15 04:17:07,692 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-15 04:17:07,692 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-15 04:17:07,693 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-15 04:17:07,693 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-15 04:17:07,694 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-15 04:17:07,695 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-15 04:17:07,696 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-15 04:17:07,697 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-15 04:17:07,698 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| 20) 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-15 04:17:07,700 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-15 04:17:07,701 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-15 04:17:07,701 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-15 04:17:07,701 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-15 04:17:07,701 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-15 04:17:07,702 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:18:24,511 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-15 04:18:24,511 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-15 04:18:24,512 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-15 04:18:24,513 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-15 04:18:24,513 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| 20) 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-15 04:18:24,514 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-15 04:18:24,519 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-15 04:18:24,520 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-15 04:18:24,530 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-15 04:18:24,531 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-15 04:18:24,531 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-15 04:18:24,535 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-15 04:18:24,536 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-15 04:18:24,536 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| 20) 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-15 04:18:24,537 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-15 04:18:24,538 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-15 04:18:24,539 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-15 04:18:24,539 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-15 04:18:24,540 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-15 04:18:24,540 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-15 04:18:24,540 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-15 04:18:24,540 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-15 04:18:24,541 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1697#true} is VALID [2022-04-15 04:18:24,541 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-15 04:18:24,541 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-15 04:18:24,541 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-15 04:18:24,541 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-15 04:18:24,541 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-15 04:18:24,542 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:24,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [290833706] [2022-04-15 04:18:24,542 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:24,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1341980454] [2022-04-15 04:18:24,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1341980454] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:18:24,542 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:18:24,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 17 [2022-04-15 04:18:24,542 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [273263282] [2022-04-15 04:18:24,542 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:18:24,543 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-15 04:18:24,543 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:24,543 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-15 04:18:24,600 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-15 04:18:24,600 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-15 04:18:24,600 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:24,600 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-15 04:18:24,600 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=223, Unknown=0, NotChecked=0, Total=272 [2022-04-15 04:18:24,601 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-15 04:18:27,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:27,961 INFO L93 Difference]: Finished difference Result 127 states and 164 transitions. [2022-04-15 04:18:27,961 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 04:18:27,961 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-15 04:18:27,961 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:27,962 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-15 04:18:27,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-15 04:18:27,963 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-15 04:18:27,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-15 04:18:27,965 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 83 transitions. [2022-04-15 04:18:28,162 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-15 04:18:28,165 INFO L225 Difference]: With dead ends: 127 [2022-04-15 04:18:28,165 INFO L226 Difference]: Without dead ends: 121 [2022-04-15 04:18:28,165 INFO L912 BasicCegarLoop]: 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-15 04:18:28,168 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 99 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 281 mSolverCounterSat, 89 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s 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.5s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:28,169 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [102 Valid, 144 Invalid, 370 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [89 Valid, 281 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-15 04:18:28,170 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-04-15 04:18:28,247 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 79. [2022-04-15 04:18:28,247 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:28,248 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-15 04:18:28,249 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-15 04:18:28,250 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-15 04:18:28,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:28,257 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-15 04:18:28,257 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-15 04:18:28,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:28,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:28,258 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-15 04:18:28,259 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-15 04:18:28,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:28,263 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-15 04:18:28,263 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-15 04:18:28,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:28,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:28,264 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:28,264 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:28,265 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-15 04:18:28,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 96 transitions. [2022-04-15 04:18:28,267 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 96 transitions. Word has length 27 [2022-04-15 04:18:28,268 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:28,268 INFO L478 AbstractCegarLoop]: Abstraction has 79 states and 96 transitions. [2022-04-15 04:18:28,268 INFO L479 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-15 04:18:28,268 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 96 transitions. [2022-04-15 04:18:28,268 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 04:18:28,268 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:28,269 INFO L499 BasicCegarLoop]: 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-15 04:18:28,297 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-15 04:18:28,492 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:28,492 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:28,493 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:28,493 INFO L85 PathProgramCache]: Analyzing trace with hash -410392694, now seen corresponding path program 1 times [2022-04-15 04:18:28,493 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:28,493 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [238850117] [2022-04-15 04:18:28,493 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:28,493 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:28,510 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:28,510 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1769271568] [2022-04-15 04:18:28,510 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:28,510 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:28,511 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:28,514 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-15 04:18:28,515 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-15 04:18:28,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:28,554 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-15 04:18:28,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:28,567 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:28,726 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-15 04:18:28,727 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-15 04:18:28,727 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-15 04:18:28,727 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-15 04:18:28,727 INFO L272 TraceCheckUtils]: 4: Hoare triple {2407#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2407#true} is VALID [2022-04-15 04:18:28,727 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-15 04:18:28,728 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-15 04:18:28,728 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-15 04:18:28,728 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-15 04:18:28,729 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-15 04:18:28,729 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-15 04:18:28,730 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-15 04:18:28,730 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-15 04:18:28,731 INFO L290 TraceCheckUtils]: 13: Hoare triple {2448#(<= 1 main_~b~0)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2448#(<= 1 main_~b~0)} is VALID [2022-04-15 04:18:28,731 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-15 04:18:28,731 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-15 04:18:28,731 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-15 04:18:28,731 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-15 04:18:28,732 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-15 04:18:28,732 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-15 04:18:28,732 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-15 04:18:28,733 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-15 04:18:28,733 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-15 04:18:28,733 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-15 04:18:28,733 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-15 04:18:28,734 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-15 04:18:28,735 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-15 04:18:28,735 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-15 04:18:28,735 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-15 04:18:28,735 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-15 04:18:28,735 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:28,735 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:28,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [238850117] [2022-04-15 04:18:28,736 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:28,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1769271568] [2022-04-15 04:18:28,736 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1769271568] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:28,736 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:28,736 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 04:18:28,736 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1079934855] [2022-04-15 04:18:28,736 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:28,737 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-15 04:18:28,737 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:28,737 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-15 04:18:28,760 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-15 04:18:28,761 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 04:18:28,761 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:28,761 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 04:18:28,761 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-15 04:18:28,761 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-15 04:18:29,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:29,184 INFO L93 Difference]: Finished difference Result 116 states and 151 transitions. [2022-04-15 04:18:29,184 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 04:18:29,184 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-15 04:18:29,185 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:29,186 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-15 04:18:29,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-15 04:18:29,187 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-15 04:18:29,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-15 04:18:29,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-15 04:18:29,242 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-15 04:18:29,244 INFO L225 Difference]: With dead ends: 116 [2022-04-15 04:18:29,244 INFO L226 Difference]: Without dead ends: 104 [2022-04-15 04:18:29,244 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-15 04:18:29,245 INFO L913 BasicCegarLoop]: 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-15 04:18:29,245 INFO L914 BasicCegarLoop]: 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-15 04:18:29,245 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2022-04-15 04:18:29,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 99. [2022-04-15 04:18:29,322 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:29,323 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-15 04:18:29,323 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-15 04:18:29,325 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-15 04:18:29,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:29,330 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-15 04:18:29,330 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-15 04:18:29,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:29,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:29,331 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-15 04:18:29,331 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-15 04:18:29,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:29,334 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-15 04:18:29,334 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-15 04:18:29,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:29,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:29,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:29,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:29,336 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-15 04:18:29,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 125 transitions. [2022-04-15 04:18:29,338 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 125 transitions. Word has length 29 [2022-04-15 04:18:29,338 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:29,338 INFO L478 AbstractCegarLoop]: Abstraction has 99 states and 125 transitions. [2022-04-15 04:18:29,338 INFO L479 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-15 04:18:29,338 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 125 transitions. [2022-04-15 04:18:29,340 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-15 04:18:29,340 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:29,341 INFO L499 BasicCegarLoop]: 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-15 04:18:29,366 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-15 04:18:29,555 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:29,555 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:29,556 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:29,556 INFO L85 PathProgramCache]: Analyzing trace with hash 159893073, now seen corresponding path program 1 times [2022-04-15 04:18:29,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:29,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1624234205] [2022-04-15 04:18:29,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:29,556 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:29,570 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:29,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [956979851] [2022-04-15 04:18:29,570 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:29,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:29,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:29,575 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-15 04:18:29,578 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-15 04:18:29,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:29,619 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 04:18:29,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:29,628 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:29,752 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-15 04:18:29,752 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-15 04:18:29,752 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-15 04:18:29,752 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-15 04:18:29,753 INFO L272 TraceCheckUtils]: 4: Hoare triple {3011#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3011#true} is VALID [2022-04-15 04:18:29,753 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-15 04:18:29,753 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-15 04:18:29,753 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-15 04:18:29,753 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-15 04:18:29,753 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-15 04:18:29,753 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-15 04:18:29,754 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-15 04:18:29,754 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-15 04:18:29,754 INFO L290 TraceCheckUtils]: 13: Hoare triple {3011#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3011#true} is VALID [2022-04-15 04:18:29,754 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-15 04:18:29,754 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-15 04:18:29,754 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-15 04:18:29,754 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-15 04:18:29,754 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-15 04:18:29,755 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-15 04:18:29,755 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-15 04:18:29,758 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-15 04:18:29,759 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-15 04:18:29,759 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-15 04:18:29,759 INFO L290 TraceCheckUtils]: 24: Hoare triple {3073#(not (= main_~a~0 0))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) 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-15 04:18:29,759 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-15 04:18:29,759 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-15 04:18:29,760 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-15 04:18:29,760 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-15 04:18:29,760 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-15 04:18:29,761 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-15 04:18:29,761 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-15 04:18:29,761 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-15 04:18:29,761 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-15 04:18:29,761 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-15 04:18:29,761 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-15 04:18:29,762 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-15 04:18:29,762 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-15 04:18:29,763 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-15 04:18:29,763 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-15 04:18:29,763 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-15 04:18:29,763 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:29,763 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:29,763 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1624234205] [2022-04-15 04:18:29,763 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:29,763 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [956979851] [2022-04-15 04:18:29,763 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [956979851] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:29,764 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:29,764 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 04:18:29,764 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1076941672] [2022-04-15 04:18:29,764 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:29,764 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-15 04:18:29,764 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:29,765 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-15 04:18:29,788 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-15 04:18:29,789 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 04:18:29,789 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:29,789 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 04:18:29,789 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-15 04:18:29,789 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-15 04:18:30,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:30,078 INFO L93 Difference]: Finished difference Result 141 states and 180 transitions. [2022-04-15 04:18:30,079 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 04:18:30,079 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-15 04:18:30,079 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:30,079 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-15 04:18:30,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-15 04:18:30,080 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-15 04:18:30,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-15 04:18:30,081 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 51 transitions. [2022-04-15 04:18:30,128 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-15 04:18:30,130 INFO L225 Difference]: With dead ends: 141 [2022-04-15 04:18:30,130 INFO L226 Difference]: Without dead ends: 129 [2022-04-15 04:18:30,130 INFO L912 BasicCegarLoop]: 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-15 04:18:30,131 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 7 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:30,131 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 116 Invalid, 59 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:18:30,132 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-15 04:18:30,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 113. [2022-04-15 04:18:30,211 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:30,212 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-15 04:18:30,212 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-15 04:18:30,212 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-15 04:18:30,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:30,216 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-15 04:18:30,216 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-15 04:18:30,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:30,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:30,217 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-15 04:18:30,218 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-15 04:18:30,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:30,221 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-15 04:18:30,221 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-15 04:18:30,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:30,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:30,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:30,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:30,222 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-15 04:18:30,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 143 transitions. [2022-04-15 04:18:30,225 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 143 transitions. Word has length 40 [2022-04-15 04:18:30,225 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:30,226 INFO L478 AbstractCegarLoop]: Abstraction has 113 states and 143 transitions. [2022-04-15 04:18:30,226 INFO L479 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-15 04:18:30,226 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 143 transitions. [2022-04-15 04:18:30,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-15 04:18:30,226 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:30,227 INFO L499 BasicCegarLoop]: 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-15 04:18:30,253 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-15 04:18:30,435 WARN L460 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-15 04:18:30,435 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:30,436 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:30,436 INFO L85 PathProgramCache]: Analyzing trace with hash -837179280, now seen corresponding path program 1 times [2022-04-15 04:18:30,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:30,436 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1117695319] [2022-04-15 04:18:30,436 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:30,436 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:30,447 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:30,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [86663736] [2022-04-15 04:18:30,452 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:30,452 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:30,452 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:30,453 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-15 04:18:30,468 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-15 04:18:30,497 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:30,498 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-15 04:18:30,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:30,518 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:30,775 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 04:18:30,816 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-15 04:18:30,816 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-15 04:18:30,816 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-15 04:18:30,816 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-15 04:18:30,816 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-15 04:18:30,816 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-15 04:18:30,816 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-15 04:18:30,817 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-15 04:18:30,817 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-15 04:18:30,818 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-15 04:18:30,818 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-15 04:18:30,819 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-15 04:18:30,819 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-15 04:18:30,819 INFO L290 TraceCheckUtils]: 13: Hoare triple {3790#(<= 1 main_~b~0)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3790#(<= 1 main_~b~0)} is VALID [2022-04-15 04:18:30,820 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-15 04:18:30,820 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-15 04:18:30,820 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-15 04:18:30,820 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-15 04:18:30,821 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-15 04:18:30,821 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-15 04:18:30,821 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-15 04:18:30,822 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-15 04:18:30,823 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-15 04:18:30,823 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-15 04:18:30,824 INFO L290 TraceCheckUtils]: 24: Hoare triple {3824#(<= 0 main_~b~0)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3824#(<= 0 main_~b~0)} is VALID [2022-04-15 04:18:30,824 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-15 04:18:30,824 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-15 04:18:30,824 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-15 04:18:30,824 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-15 04:18:30,825 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-15 04:18:30,825 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-15 04:18:30,826 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-15 04:18:30,826 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-15 04:18:30,826 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-15 04:18:30,826 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-15 04:18:30,826 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-15 04:18:30,828 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-15 04:18:30,829 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-15 04:18:30,829 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-15 04:18:30,829 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-15 04:18:30,830 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-15 04:18:30,830 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:18:31,071 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-15 04:18:31,071 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-15 04:18:31,072 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-15 04:18:31,072 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-15 04:18:31,073 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-15 04:18:31,073 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-15 04:18:31,073 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-15 04:18:31,073 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-15 04:18:31,074 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-15 04:18:31,075 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-15 04:18:31,075 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-15 04:18:31,076 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-15 04:18:31,076 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-15 04:18:31,076 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-15 04:18:31,076 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-15 04:18:31,076 INFO L290 TraceCheckUtils]: 24: Hoare triple {3749#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3749#true} is VALID [2022-04-15 04:18:31,076 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-15 04:18:31,076 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-15 04:18:31,076 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-15 04:18:31,077 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-15 04:18:31,077 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-15 04:18:31,077 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-15 04:18:31,077 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-15 04:18:31,077 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-15 04:18:31,077 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-15 04:18:31,077 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-15 04:18:31,077 INFO L290 TraceCheckUtils]: 13: Hoare triple {3749#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3749#true} is VALID [2022-04-15 04:18:31,078 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-15 04:18:31,078 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-15 04:18:31,078 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-15 04:18:31,078 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-15 04:18:31,078 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-15 04:18:31,078 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-15 04:18:31,078 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-15 04:18:31,078 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-15 04:18:31,078 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3749#true} is VALID [2022-04-15 04:18:31,079 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-15 04:18:31,079 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-15 04:18:31,079 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-15 04:18:31,079 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-15 04:18:31,079 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-15 04:18:31,079 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:31,079 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1117695319] [2022-04-15 04:18:31,079 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:31,080 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [86663736] [2022-04-15 04:18:31,080 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [86663736] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 04:18:31,080 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 04:18:31,080 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-15 04:18:31,080 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1461518268] [2022-04-15 04:18:31,080 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:31,081 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-15 04:18:31,081 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:31,081 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-15 04:18:31,108 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-15 04:18:31,108 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 04:18:31,108 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:31,109 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 04:18:31,109 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-15 04:18:31,109 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-15 04:18:31,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:31,488 INFO L93 Difference]: Finished difference Result 120 states and 149 transitions. [2022-04-15 04:18:31,489 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 04:18:31,489 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-15 04:18:31,489 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:31,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-15 04:18:31,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-15 04:18:31,490 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-15 04:18:31,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-15 04:18:31,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2022-04-15 04:18:31,526 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-15 04:18:31,527 INFO L225 Difference]: With dead ends: 120 [2022-04-15 04:18:31,527 INFO L226 Difference]: Without dead ends: 100 [2022-04-15 04:18:31,528 INFO L912 BasicCegarLoop]: 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-15 04:18:31,529 INFO L913 BasicCegarLoop]: 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-15 04:18:31,529 INFO L914 BasicCegarLoop]: 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-15 04:18:31,529 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-15 04:18:31,573 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 66. [2022-04-15 04:18:31,573 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:31,574 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-15 04:18:31,574 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-15 04:18:31,574 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-15 04:18:31,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:31,577 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-15 04:18:31,577 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-15 04:18:31,577 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:31,577 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:31,578 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-15 04:18:31,578 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-15 04:18:31,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:31,581 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-15 04:18:31,581 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-15 04:18:31,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:31,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:31,581 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:31,581 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:31,581 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-15 04:18:31,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 79 transitions. [2022-04-15 04:18:31,583 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 79 transitions. Word has length 40 [2022-04-15 04:18:31,583 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:31,583 INFO L478 AbstractCegarLoop]: Abstraction has 66 states and 79 transitions. [2022-04-15 04:18:31,583 INFO L479 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-15 04:18:31,583 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 79 transitions. [2022-04-15 04:18:31,584 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-15 04:18:31,584 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:31,584 INFO L499 BasicCegarLoop]: 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-15 04:18:31,605 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-15 04:18:31,799 WARN L460 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-15 04:18:31,799 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:31,800 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:31,800 INFO L85 PathProgramCache]: Analyzing trace with hash -1169624165, now seen corresponding path program 2 times [2022-04-15 04:18:31,800 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:31,800 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1789292553] [2022-04-15 04:18:31,800 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:31,800 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:31,813 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:31,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [833872749] [2022-04-15 04:18:31,813 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 04:18:31,813 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:31,813 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:31,814 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-15 04:18:31,835 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-15 04:18:31,875 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 04:18:31,875 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 04:18:31,876 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 04:18:31,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:31,891 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:32,167 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-15 04:18:32,168 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-15 04:18:32,168 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-15 04:18:32,168 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-15 04:18:32,169 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-15 04:18:32,169 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-15 04:18:32,170 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-15 04:18:32,170 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-15 04:18:32,170 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-15 04:18:32,171 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-15 04:18:32,171 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-15 04:18:32,172 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-15 04:18:32,172 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-15 04:18:32,173 INFO L290 TraceCheckUtils]: 13: Hoare triple {4495#(<= ~counter~0 1)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4495#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:32,173 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-15 04:18:32,174 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-15 04:18:32,174 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-15 04:18:32,174 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-15 04:18:32,175 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-15 04:18:32,176 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-15 04:18:32,176 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-15 04:18:32,177 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-15 04:18:32,177 INFO L290 TraceCheckUtils]: 22: Hoare triple {4523#(<= ~counter~0 2)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4523#(<= ~counter~0 2)} is VALID [2022-04-15 04:18:32,178 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-15 04:18:32,178 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-15 04:18:32,178 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-15 04:18:32,179 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-15 04:18:32,180 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-15 04:18:32,180 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-15 04:18:32,181 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-15 04:18:32,181 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-15 04:18:32,182 INFO L290 TraceCheckUtils]: 31: Hoare triple {4551#(<= ~counter~0 3)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4551#(<= ~counter~0 3)} is VALID [2022-04-15 04:18:32,183 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-15 04:18:32,183 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-15 04:18:32,183 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-15 04:18:32,184 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-15 04:18:32,185 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-15 04:18:32,185 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-15 04:18:32,186 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-15 04:18:32,186 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-15 04:18:32,187 INFO L290 TraceCheckUtils]: 40: Hoare triple {4579#(<= ~counter~0 4)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4579#(<= ~counter~0 4)} is VALID [2022-04-15 04:18:32,188 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-15 04:18:32,188 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-15 04:18:32,188 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-15 04:18:32,189 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-15 04:18:32,190 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-15 04:18:32,190 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-15 04:18:32,191 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-15 04:18:32,191 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-15 04:18:32,192 INFO L290 TraceCheckUtils]: 49: Hoare triple {4607#(<= |main_#t~post6| 4)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 20)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4454#false} is VALID [2022-04-15 04:18:32,192 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-15 04:18:32,192 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-15 04:18:32,192 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-15 04:18:32,192 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-15 04:18:32,192 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-15 04:18:32,192 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:18:32,518 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-15 04:18:32,518 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-15 04:18:32,518 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-15 04:18:32,518 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-15 04:18:32,519 INFO L290 TraceCheckUtils]: 49: Hoare triple {4635#(< |main_#t~post6| 20)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 20)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4454#false} is VALID [2022-04-15 04:18:32,519 INFO L290 TraceCheckUtils]: 48: Hoare triple {4639#(< ~counter~0 20)} [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| 20)} is VALID [2022-04-15 04:18:32,520 INFO L290 TraceCheckUtils]: 47: Hoare triple {4639#(< ~counter~0 20)} [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 20)} is VALID [2022-04-15 04:18:32,520 INFO L290 TraceCheckUtils]: 46: Hoare triple {4639#(< ~counter~0 20)} [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 20)} is VALID [2022-04-15 04:18:32,521 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4453#true} {4639#(< ~counter~0 20)} [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 20)} is VALID [2022-04-15 04:18:32,521 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-15 04:18:32,521 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-15 04:18:32,521 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-15 04:18:32,521 INFO L272 TraceCheckUtils]: 41: Hoare triple {4639#(< ~counter~0 20)} [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-15 04:18:32,522 INFO L290 TraceCheckUtils]: 40: Hoare triple {4639#(< ~counter~0 20)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4639#(< ~counter~0 20)} is VALID [2022-04-15 04:18:32,522 INFO L290 TraceCheckUtils]: 39: Hoare triple {4667#(< ~counter~0 19)} [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 20)} is VALID [2022-04-15 04:18:32,523 INFO L290 TraceCheckUtils]: 38: Hoare triple {4667#(< ~counter~0 19)} [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 19)} is VALID [2022-04-15 04:18:32,523 INFO L290 TraceCheckUtils]: 37: Hoare triple {4667#(< ~counter~0 19)} [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 19)} is VALID [2022-04-15 04:18:32,524 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4453#true} {4667#(< ~counter~0 19)} [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 19)} is VALID [2022-04-15 04:18:32,524 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-15 04:18:32,524 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-15 04:18:32,524 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-15 04:18:32,525 INFO L272 TraceCheckUtils]: 32: Hoare triple {4667#(< ~counter~0 19)} [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-15 04:18:32,525 INFO L290 TraceCheckUtils]: 31: Hoare triple {4667#(< ~counter~0 19)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4667#(< ~counter~0 19)} is VALID [2022-04-15 04:18:32,525 INFO L290 TraceCheckUtils]: 30: Hoare triple {4695#(< ~counter~0 18)} [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 19)} is VALID [2022-04-15 04:18:32,526 INFO L290 TraceCheckUtils]: 29: Hoare triple {4695#(< ~counter~0 18)} [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 18)} is VALID [2022-04-15 04:18:32,526 INFO L290 TraceCheckUtils]: 28: Hoare triple {4695#(< ~counter~0 18)} [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 18)} is VALID [2022-04-15 04:18:32,527 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4453#true} {4695#(< ~counter~0 18)} [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 18)} is VALID [2022-04-15 04:18:32,527 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-15 04:18:32,527 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-15 04:18:32,527 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-15 04:18:32,527 INFO L272 TraceCheckUtils]: 23: Hoare triple {4695#(< ~counter~0 18)} [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-15 04:18:32,528 INFO L290 TraceCheckUtils]: 22: Hoare triple {4695#(< ~counter~0 18)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4695#(< ~counter~0 18)} is VALID [2022-04-15 04:18:32,528 INFO L290 TraceCheckUtils]: 21: Hoare triple {4723#(< ~counter~0 17)} [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 18)} is VALID [2022-04-15 04:18:32,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {4723#(< ~counter~0 17)} [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 17)} is VALID [2022-04-15 04:18:32,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {4723#(< ~counter~0 17)} [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 17)} is VALID [2022-04-15 04:18:32,530 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4453#true} {4723#(< ~counter~0 17)} [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 17)} is VALID [2022-04-15 04:18:32,530 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-15 04:18:32,530 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-15 04:18:32,530 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-15 04:18:32,530 INFO L272 TraceCheckUtils]: 14: Hoare triple {4723#(< ~counter~0 17)} [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-15 04:18:32,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {4723#(< ~counter~0 17)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 20) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4723#(< ~counter~0 17)} is VALID [2022-04-15 04:18:32,531 INFO L290 TraceCheckUtils]: 12: Hoare triple {4751#(< ~counter~0 16)} [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 17)} is VALID [2022-04-15 04:18:32,531 INFO L290 TraceCheckUtils]: 11: Hoare triple {4751#(< ~counter~0 16)} [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 16)} is VALID [2022-04-15 04:18:32,532 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4453#true} {4751#(< ~counter~0 16)} [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 16)} is VALID [2022-04-15 04:18:32,532 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-15 04:18:32,532 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-15 04:18:32,532 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-15 04:18:32,532 INFO L272 TraceCheckUtils]: 6: Hoare triple {4751#(< ~counter~0 16)} [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-15 04:18:32,533 INFO L290 TraceCheckUtils]: 5: Hoare triple {4751#(< ~counter~0 16)} [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 16)} is VALID [2022-04-15 04:18:32,533 INFO L272 TraceCheckUtils]: 4: Hoare triple {4751#(< ~counter~0 16)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4751#(< ~counter~0 16)} is VALID [2022-04-15 04:18:32,534 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4751#(< ~counter~0 16)} {4453#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4751#(< ~counter~0 16)} is VALID [2022-04-15 04:18:32,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {4751#(< ~counter~0 16)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4751#(< ~counter~0 16)} is VALID [2022-04-15 04:18:32,535 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 16)} is VALID [2022-04-15 04:18:32,535 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-15 04:18:32,535 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-15 04:18:32,535 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:32,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1789292553] [2022-04-15 04:18:32,535 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:32,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [833872749] [2022-04-15 04:18:32,535 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [833872749] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:18:32,535 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:18:32,535 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-15 04:18:32,536 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1597434272] [2022-04-15 04:18:32,536 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:18:32,536 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-15 04:18:32,537 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:32,539 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-15 04:18:32,620 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-15 04:18:32,620 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 04:18:32,620 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:32,620 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 04:18:32,620 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 04:18:32,621 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-15 04:18:33,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:33,172 INFO L93 Difference]: Finished difference Result 140 states and 177 transitions. [2022-04-15 04:18:33,172 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-15 04:18:33,172 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-15 04:18:33,173 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:33,173 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-15 04:18:33,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 174 transitions. [2022-04-15 04:18:33,176 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-15 04:18:33,179 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 174 transitions. [2022-04-15 04:18:33,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 174 transitions. [2022-04-15 04:18:33,313 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-15 04:18:33,315 INFO L225 Difference]: With dead ends: 140 [2022-04-15 04:18:33,315 INFO L226 Difference]: Without dead ends: 132 [2022-04-15 04:18:33,316 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=184, Invalid=322, Unknown=0, NotChecked=0, Total=506 [2022-04-15 04:18:33,316 INFO L913 BasicCegarLoop]: 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-15 04:18:33,317 INFO L914 BasicCegarLoop]: 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-15 04:18:33,317 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-15 04:18:33,386 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 132. [2022-04-15 04:18:33,386 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:33,386 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-15 04:18:33,387 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-15 04:18:33,387 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-15 04:18:33,389 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:33,389 INFO L93 Difference]: Finished difference Result 132 states and 163 transitions. [2022-04-15 04:18:33,389 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-15 04:18:33,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:33,389 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:33,389 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-15 04:18:33,390 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-15 04:18:33,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:33,392 INFO L93 Difference]: Finished difference Result 132 states and 163 transitions. [2022-04-15 04:18:33,392 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-15 04:18:33,392 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:33,392 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:33,392 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:33,392 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:33,393 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-15 04:18:33,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 163 transitions. [2022-04-15 04:18:33,395 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 163 transitions. Word has length 54 [2022-04-15 04:18:33,395 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:33,396 INFO L478 AbstractCegarLoop]: Abstraction has 132 states and 163 transitions. [2022-04-15 04:18:33,396 INFO L479 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-15 04:18:33,396 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-15 04:18:33,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-15 04:18:33,397 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:33,397 INFO L499 BasicCegarLoop]: 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-15 04:18:33,416 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-15 04:18:33,607 WARN L460 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-15 04:18:33,607 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:33,608 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:33,608 INFO L85 PathProgramCache]: Analyzing trace with hash 93180219, now seen corresponding path program 3 times [2022-04-15 04:18:33,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:33,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [632620942] [2022-04-15 04:18:33,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:33,608 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:33,631 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:33,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [393707109] [2022-04-15 04:18:33,632 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-15 04:18:33,632 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:33,632 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:33,633 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-15 04:18:33,634 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process