/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/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 21:10:53,941 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 21:10:53,943 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 21:10:53,991 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 21:10:53,991 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 21:10:53,992 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 21:10:53,994 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 21:10:53,996 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 21:10:53,997 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 21:10:53,998 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 21:10:53,999 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 21:10:54,000 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 21:10:54,001 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 21:10:54,002 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 21:10:54,003 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 21:10:54,008 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 21:10:54,009 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 21:10:54,012 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 21:10:54,013 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 21:10:54,015 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 21:10:54,017 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 21:10:54,018 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 21:10:54,019 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 21:10:54,020 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 21:10:54,020 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 21:10:54,022 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 21:10:54,023 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 21:10:54,023 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 21:10:54,024 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 21:10:54,024 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 21:10:54,025 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 21:10:54,025 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 21:10:54,026 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 21:10:54,026 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 21:10:54,027 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 21:10:54,028 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 21:10:54,028 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 21:10:54,029 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 21:10:54,029 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 21:10:54,029 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 21:10:54,030 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 21:10:54,031 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 21:10:54,032 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 21:10:54,042 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 21:10:54,043 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 21:10:54,045 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 21:10:54,045 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 21:10:54,045 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 21:10:54,045 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 21:10:54,045 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 21:10:54,045 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 21:10:54,045 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 21:10:54,046 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 21:10:54,046 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 21:10:54,047 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 21:10:54,047 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 21:10:54,047 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 21:10:54,047 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 21:10:54,047 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 21:10:54,047 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 21:10:54,047 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 21:10:54,048 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 21:10:54,048 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 21:10:54,048 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 21:10:54,050 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 21:10:54,050 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN 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-14 21:10:54,267 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 21:10:54,289 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 21:10:54,290 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 21:10:54,291 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 21:10:54,296 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 21:10:54,297 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound1.c [2022-04-14 21:10:54,350 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b8700d163/cfe1c8e3883a40389de5ebbeaa14a4e7/FLAGa42730825 [2022-04-14 21:10:54,741 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 21:10:54,742 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound1.c [2022-04-14 21:10:54,747 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b8700d163/cfe1c8e3883a40389de5ebbeaa14a4e7/FLAGa42730825 [2022-04-14 21:10:54,762 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b8700d163/cfe1c8e3883a40389de5ebbeaa14a4e7 [2022-04-14 21:10:54,764 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 21:10:54,765 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 21:10:54,769 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 21:10:54,770 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 21:10:54,773 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 21:10:54,774 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 09:10:54" (1/1) ... [2022-04-14 21:10:54,775 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@39b91ee7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:54, skipping insertion in model container [2022-04-14 21:10:54,777 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 09:10:54" (1/1) ... [2022-04-14 21:10:54,783 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 21:10:54,799 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 21:10:54,964 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/egcd-ll_unwindbound1.c[489,502] [2022-04-14 21:10:55,011 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 21:10:55,022 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 21:10:55,035 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/egcd-ll_unwindbound1.c[489,502] [2022-04-14 21:10:55,059 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 21:10:55,071 INFO L208 MainTranslator]: Completed translation [2022-04-14 21:10:55,071 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55 WrapperNode [2022-04-14 21:10:55,071 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 21:10:55,072 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 21:10:55,072 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 21:10:55,073 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 21:10:55,084 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,084 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,092 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,092 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,107 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,113 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,119 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,126 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 21:10:55,128 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 21:10:55,128 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 21:10:55,128 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 21:10:55,129 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,136 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 21:10:55,145 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:10:55,161 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-14 21:10:55,184 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-14 21:10:55,201 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 21:10:55,201 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 21:10:55,202 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 21:10:55,202 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 21:10:55,202 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 21:10:55,202 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 21:10:55,202 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 21:10:55,203 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 21:10:55,203 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 21:10:55,203 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 21:10:55,203 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 21:10:55,203 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 21:10:55,203 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 21:10:55,204 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 21:10:55,204 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 21:10:55,205 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 21:10:55,205 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 21:10:55,205 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 21:10:55,205 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 21:10:55,205 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 21:10:55,263 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 21:10:55,264 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 21:10:55,406 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 21:10:55,412 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 21:10:55,413 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-14 21:10:55,414 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:10:55 BoogieIcfgContainer [2022-04-14 21:10:55,414 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 21:10:55,415 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 21:10:55,415 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 21:10:55,416 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 21:10:55,419 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:10:55" (1/1) ... [2022-04-14 21:10:55,421 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 21:10:55,452 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 09:10:55 BasicIcfg [2022-04-14 21:10:55,452 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 21:10:55,454 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 21:10:55,454 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 21:10:55,456 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 21:10:55,457 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 09:10:54" (1/4) ... [2022-04-14 21:10:55,457 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1845b97 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 09:10:55, skipping insertion in model container [2022-04-14 21:10:55,457 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:10:55" (2/4) ... [2022-04-14 21:10:55,458 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1845b97 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 09:10:55, skipping insertion in model container [2022-04-14 21:10:55,458 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:10:55" (3/4) ... [2022-04-14 21:10:55,458 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1845b97 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 09:10:55, skipping insertion in model container [2022-04-14 21:10:55,458 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 09:10:55" (4/4) ... [2022-04-14 21:10:55,459 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_unwindbound1.cJordan [2022-04-14 21:10:55,473 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 21:10:55,473 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 21:10:55,536 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 21:10:55,546 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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-14 21:10:55,546 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 21:10:55,572 INFO L276 IsEmpty]: Start isEmpty. Operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 21:10:55,578 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-14 21:10:55,579 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:10:55,579 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:10:55,580 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:10:55,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:10:55,585 INFO L85 PathProgramCache]: Analyzing trace with hash 2051628946, now seen corresponding path program 1 times [2022-04-14 21:10:55,593 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:10:55,594 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [901145364] [2022-04-14 21:10:55,594 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:10:55,595 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:10:55,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:55,758 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 21:10:55,763 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:55,777 INFO L290 TraceCheckUtils]: 0: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [87] 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) 10) (= (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] {38#true} is VALID [2022-04-14 21:10:55,778 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,778 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {38#true} {38#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,780 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 21:10:55,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:55,788 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} [93] assume_abort_if_notENTRY-->L8: 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] {38#true} is VALID [2022-04-14 21:10:55,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} [96] L8-->L8-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[] {38#true} is VALID [2022-04-14 21:10:55,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#true} {38#true} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {38#true} is VALID [2022-04-14 21:10:55,790 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-14 21:10:55,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:55,797 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} [93] assume_abort_if_notENTRY-->L8: 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] {38#true} is VALID [2022-04-14 21:10:55,798 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} [96] L8-->L8-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[] {38#true} is VALID [2022-04-14 21:10:55,798 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,798 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#true} {38#true} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {38#true} is VALID [2022-04-14 21:10:55,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {38#true} [85] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 21:10:55,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [87] 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) 10) (= (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] {38#true} is VALID [2022-04-14 21:10:55,801 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#true} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,801 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#true} {38#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,802 INFO L272 TraceCheckUtils]: 4: Hoare triple {38#true} [86] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#true} [89] mainENTRY-->L24: 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_4, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_4, main_~r~0=v_main_~r~0_4, main_~s~0=v_main_~s~0_4, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {38#true} is VALID [2022-04-14 21:10:55,802 INFO L272 TraceCheckUtils]: 6: Hoare triple {38#true} [91] L24-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {38#true} is VALID [2022-04-14 21:10:55,803 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#true} [93] assume_abort_if_notENTRY-->L8: 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] {38#true} is VALID [2022-04-14 21:10:55,803 INFO L290 TraceCheckUtils]: 8: Hoare triple {38#true} [96] L8-->L8-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[] {38#true} is VALID [2022-04-14 21:10:55,803 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,804 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38#true} {38#true} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {38#true} is VALID [2022-04-14 21:10:55,804 INFO L272 TraceCheckUtils]: 11: Hoare triple {38#true} [92] L24-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {38#true} is VALID [2022-04-14 21:10:55,804 INFO L290 TraceCheckUtils]: 12: Hoare triple {38#true} [93] assume_abort_if_notENTRY-->L8: 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] {38#true} is VALID [2022-04-14 21:10:55,804 INFO L290 TraceCheckUtils]: 13: Hoare triple {38#true} [96] L8-->L8-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[] {38#true} is VALID [2022-04-14 21:10:55,805 INFO L290 TraceCheckUtils]: 14: Hoare triple {38#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38#true} is VALID [2022-04-14 21:10:55,805 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38#true} {38#true} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {38#true} is VALID [2022-04-14 21:10:55,805 INFO L290 TraceCheckUtils]: 16: Hoare triple {38#true} [94] L25-->L42-2: Formula: (and (= v_main_~r~0_7 0) (= v_main_~q~0_7 0) (= v_main_~s~0_7 1) (= v_main_~p~0_7 1) (= v_main_~b~0_8 v_main_~y~0_7) (= v_main_~a~0_6 v_main_~x~0_7)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7} OutVars{main_~q~0=v_main_~q~0_7, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_7, main_~r~0=v_main_~r~0_7, main_~s~0=v_main_~s~0_7, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {38#true} is VALID [2022-04-14 21:10:55,806 INFO L290 TraceCheckUtils]: 17: Hoare triple {38#true} [97] L42-2-->L34-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {39#false} is VALID [2022-04-14 21:10:55,807 INFO L272 TraceCheckUtils]: 18: Hoare triple {39#false} [100] L34-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_4| (ite (= (+ (* (- 1) v_main_~b~0_13) v_main_~a~0_11) 0) 1 0)) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {39#false} is VALID [2022-04-14 21:10:55,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {39#false} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {39#false} is VALID [2022-04-14 21:10:55,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {39#false} [107] L11-->L12: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {39#false} is VALID [2022-04-14 21:10:55,808 INFO L290 TraceCheckUtils]: 21: Hoare triple {39#false} [111] L12-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39#false} is VALID [2022-04-14 21:10:55,808 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 21:10:55,808 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:10:55,809 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [901145364] [2022-04-14 21:10:55,809 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [901145364] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:10:55,810 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:10:55,810 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 21:10:55,811 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [745199783] [2022-04-14 21:10:55,818 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:10:55,824 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, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 22 [2022-04-14 21:10:55,825 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:10:55,829 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, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:55,877 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:10:55,877 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 21:10:55,877 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:10:55,906 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 21:10:55,907 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 21:10:55,916 INFO L87 Difference]: Start difference. First operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) 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, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:56,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:56,172 INFO L93 Difference]: Finished difference Result 36 states and 45 transitions. [2022-04-14 21:10:56,172 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 21:10:56,173 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, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 22 [2022-04-14 21:10:56,173 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:10:56,174 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, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:56,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 49 transitions. [2022-04-14 21:10:56,203 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, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:56,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 49 transitions. [2022-04-14 21:10:56,212 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 49 transitions. [2022-04-14 21:10:56,323 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-14 21:10:56,332 INFO L225 Difference]: With dead ends: 36 [2022-04-14 21:10:56,332 INFO L226 Difference]: Without dead ends: 31 [2022-04-14 21:10:56,334 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 7 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-14 21:10:56,338 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 21:10:56,339 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 45 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 21:10:56,354 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-14 21:10:56,366 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 30. [2022-04-14 21:10:56,366 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:10:56,367 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,368 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,368 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:56,374 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-14 21:10:56,374 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-14 21:10:56,375 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:10:56,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:10:56,376 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-14 21:10:56,376 INFO L87 Difference]: Start difference. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-14 21:10:56,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:56,381 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-14 21:10:56,381 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-14 21:10:56,382 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:10:56,382 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:10:56,382 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:10:56,382 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:10:56,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 39 transitions. [2022-04-14 21:10:56,387 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 39 transitions. Word has length 22 [2022-04-14 21:10:56,387 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:10:56,387 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 39 transitions. [2022-04-14 21:10:56,388 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, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:56,388 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-04-14 21:10:56,388 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 21:10:56,389 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:10:56,389 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:10:56,389 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 21:10:56,389 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:10:56,390 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:10:56,390 INFO L85 PathProgramCache]: Analyzing trace with hash -794581502, now seen corresponding path program 1 times [2022-04-14 21:10:56,390 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:10:56,391 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [579164872] [2022-04-14 21:10:56,391 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:10:56,391 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:10:56,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:56,494 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 21:10:56,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:56,509 INFO L290 TraceCheckUtils]: 0: Hoare triple {197#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [87] 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) 10) (= (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] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,510 INFO L290 TraceCheckUtils]: 1: Hoare triple {187#(= ~counter~0 0)} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,511 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {187#(= ~counter~0 0)} {182#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,511 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 21:10:56,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:56,520 INFO L290 TraceCheckUtils]: 0: Hoare triple {182#true} [93] assume_abort_if_notENTRY-->L8: 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] {182#true} is VALID [2022-04-14 21:10:56,520 INFO L290 TraceCheckUtils]: 1: Hoare triple {182#true} [96] L8-->L8-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[] {182#true} is VALID [2022-04-14 21:10:56,520 INFO L290 TraceCheckUtils]: 2: Hoare triple {182#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {182#true} is VALID [2022-04-14 21:10:56,521 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {182#true} {187#(= ~counter~0 0)} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,522 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-14 21:10:56,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:56,529 INFO L290 TraceCheckUtils]: 0: Hoare triple {182#true} [93] assume_abort_if_notENTRY-->L8: 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] {182#true} is VALID [2022-04-14 21:10:56,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {182#true} [96] L8-->L8-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[] {182#true} is VALID [2022-04-14 21:10:56,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {182#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {182#true} is VALID [2022-04-14 21:10:56,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {182#true} {187#(= ~counter~0 0)} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,532 INFO L272 TraceCheckUtils]: 0: Hoare triple {182#true} [85] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 21:10:56,532 INFO L290 TraceCheckUtils]: 1: Hoare triple {197#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [87] 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) 10) (= (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] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,533 INFO L290 TraceCheckUtils]: 2: Hoare triple {187#(= ~counter~0 0)} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,533 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {187#(= ~counter~0 0)} {182#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,534 INFO L272 TraceCheckUtils]: 4: Hoare triple {187#(= ~counter~0 0)} [86] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,534 INFO L290 TraceCheckUtils]: 5: Hoare triple {187#(= ~counter~0 0)} [89] mainENTRY-->L24: 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_4, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_4, main_~r~0=v_main_~r~0_4, main_~s~0=v_main_~s~0_4, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,535 INFO L272 TraceCheckUtils]: 6: Hoare triple {187#(= ~counter~0 0)} [91] L24-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {182#true} is VALID [2022-04-14 21:10:56,535 INFO L290 TraceCheckUtils]: 7: Hoare triple {182#true} [93] assume_abort_if_notENTRY-->L8: 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] {182#true} is VALID [2022-04-14 21:10:56,535 INFO L290 TraceCheckUtils]: 8: Hoare triple {182#true} [96] L8-->L8-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[] {182#true} is VALID [2022-04-14 21:10:56,535 INFO L290 TraceCheckUtils]: 9: Hoare triple {182#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {182#true} is VALID [2022-04-14 21:10:56,536 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {182#true} {187#(= ~counter~0 0)} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,536 INFO L272 TraceCheckUtils]: 11: Hoare triple {187#(= ~counter~0 0)} [92] L24-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {182#true} is VALID [2022-04-14 21:10:56,537 INFO L290 TraceCheckUtils]: 12: Hoare triple {182#true} [93] assume_abort_if_notENTRY-->L8: 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] {182#true} is VALID [2022-04-14 21:10:56,537 INFO L290 TraceCheckUtils]: 13: Hoare triple {182#true} [96] L8-->L8-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[] {182#true} is VALID [2022-04-14 21:10:56,537 INFO L290 TraceCheckUtils]: 14: Hoare triple {182#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {182#true} is VALID [2022-04-14 21:10:56,538 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {182#true} {187#(= ~counter~0 0)} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,539 INFO L290 TraceCheckUtils]: 16: Hoare triple {187#(= ~counter~0 0)} [94] L25-->L42-2: Formula: (and (= v_main_~r~0_7 0) (= v_main_~q~0_7 0) (= v_main_~s~0_7 1) (= v_main_~p~0_7 1) (= v_main_~b~0_8 v_main_~y~0_7) (= v_main_~a~0_6 v_main_~x~0_7)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7} OutVars{main_~q~0=v_main_~q~0_7, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_7, main_~r~0=v_main_~r~0_7, main_~s~0=v_main_~s~0_7, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {187#(= ~counter~0 0)} is VALID [2022-04-14 21:10:56,539 INFO L290 TraceCheckUtils]: 17: Hoare triple {187#(= ~counter~0 0)} [98] L42-2-->L34-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] {196#(= |main_#t~post6| 0)} is VALID [2022-04-14 21:10:56,540 INFO L290 TraceCheckUtils]: 18: Hoare triple {196#(= |main_#t~post6| 0)} [101] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 1)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {183#false} is VALID [2022-04-14 21:10:56,540 INFO L272 TraceCheckUtils]: 19: Hoare triple {183#false} [100] L34-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_4| (ite (= (+ (* (- 1) v_main_~b~0_13) v_main_~a~0_11) 0) 1 0)) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {183#false} is VALID [2022-04-14 21:10:56,540 INFO L290 TraceCheckUtils]: 20: Hoare triple {183#false} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {183#false} is VALID [2022-04-14 21:10:56,541 INFO L290 TraceCheckUtils]: 21: Hoare triple {183#false} [107] L11-->L12: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {183#false} is VALID [2022-04-14 21:10:56,541 INFO L290 TraceCheckUtils]: 22: Hoare triple {183#false} [111] L12-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183#false} is VALID [2022-04-14 21:10:56,541 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 21:10:56,542 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:10:56,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [579164872] [2022-04-14 21:10:56,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [579164872] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:10:56,542 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:10:56,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 21:10:56,542 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2071939069] [2022-04-14 21:10:56,543 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:10:56,544 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), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 21:10:56,544 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:10:56,545 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), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 21:10:56,562 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:10:56,563 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 21:10:56,563 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:10:56,564 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 21:10:56,566 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 21:10:56,566 INFO L87 Difference]: Start difference. First operand 30 states and 39 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 21:10:56,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:56,827 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-14 21:10:56,827 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-14 21:10:56,828 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), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 21:10:56,829 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:10:56,829 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), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 21:10:56,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 42 transitions. [2022-04-14 21:10:56,836 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), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 21:10:56,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 42 transitions. [2022-04-14 21:10:56,850 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 42 transitions. [2022-04-14 21:10:56,899 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-14 21:10:56,902 INFO L225 Difference]: With dead ends: 32 [2022-04-14 21:10:56,902 INFO L226 Difference]: Without dead ends: 32 [2022-04-14 21:10:56,906 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 8 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-14 21:10:56,909 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 13 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 21:10:56,910 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 65 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 21:10:56,912 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-14 21:10:56,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-14 21:10:56,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:10:56,918 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,919 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,920 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:56,924 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-14 21:10:56,924 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-14 21:10:56,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:10:56,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:10:56,933 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-14 21:10:56,936 INFO L87 Difference]: Start difference. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-14 21:10:56,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:56,941 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-14 21:10:56,942 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-14 21:10:56,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:10:56,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:10:56,943 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:10:56,943 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:10:56,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 21:10:56,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-14 21:10:56,952 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 23 [2022-04-14 21:10:56,952 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:10:56,952 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-14 21:10:56,952 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), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 21:10:56,952 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-14 21:10:56,953 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 21:10:56,953 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:10:56,953 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:10:56,953 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-14 21:10:56,954 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:10:56,954 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:10:56,954 INFO L85 PathProgramCache]: Analyzing trace with hash -793509026, now seen corresponding path program 1 times [2022-04-14 21:10:56,955 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:10:56,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2043674000] [2022-04-14 21:10:56,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:10:56,955 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:10:57,004 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:10:57,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1418571481] [2022-04-14 21:10:57,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:10:57,005 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:10:57,005 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:10:57,012 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-14 21:10:57,038 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-14 21:10:57,064 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:57,067 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 21:10:57,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:57,098 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:10:57,325 INFO L272 TraceCheckUtils]: 0: Hoare triple {331#true} [85] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {331#true} is VALID [2022-04-14 21:10:57,325 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} [87] 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) 10) (= (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] {331#true} is VALID [2022-04-14 21:10:57,325 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {331#true} is VALID [2022-04-14 21:10:57,326 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {331#true} is VALID [2022-04-14 21:10:57,326 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#true} [86] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {331#true} is VALID [2022-04-14 21:10:57,326 INFO L290 TraceCheckUtils]: 5: Hoare triple {331#true} [89] mainENTRY-->L24: 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_4, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_4, main_~r~0=v_main_~r~0_4, main_~s~0=v_main_~s~0_4, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {331#true} is VALID [2022-04-14 21:10:57,326 INFO L272 TraceCheckUtils]: 6: Hoare triple {331#true} [91] L24-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {331#true} is VALID [2022-04-14 21:10:57,327 INFO L290 TraceCheckUtils]: 7: Hoare triple {331#true} [93] assume_abort_if_notENTRY-->L8: 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] {331#true} is VALID [2022-04-14 21:10:57,327 INFO L290 TraceCheckUtils]: 8: Hoare triple {331#true} [96] L8-->L8-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[] {331#true} is VALID [2022-04-14 21:10:57,327 INFO L290 TraceCheckUtils]: 9: Hoare triple {331#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {331#true} is VALID [2022-04-14 21:10:57,327 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {331#true} {331#true} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {331#true} is VALID [2022-04-14 21:10:57,327 INFO L272 TraceCheckUtils]: 11: Hoare triple {331#true} [92] L24-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {331#true} is VALID [2022-04-14 21:10:57,328 INFO L290 TraceCheckUtils]: 12: Hoare triple {331#true} [93] assume_abort_if_notENTRY-->L8: 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] {331#true} is VALID [2022-04-14 21:10:57,328 INFO L290 TraceCheckUtils]: 13: Hoare triple {331#true} [96] L8-->L8-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[] {331#true} is VALID [2022-04-14 21:10:57,328 INFO L290 TraceCheckUtils]: 14: Hoare triple {331#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {331#true} is VALID [2022-04-14 21:10:57,328 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {331#true} {331#true} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {331#true} is VALID [2022-04-14 21:10:57,336 INFO L290 TraceCheckUtils]: 16: Hoare triple {331#true} [94] L25-->L42-2: Formula: (and (= v_main_~r~0_7 0) (= v_main_~q~0_7 0) (= v_main_~s~0_7 1) (= v_main_~p~0_7 1) (= v_main_~b~0_8 v_main_~y~0_7) (= v_main_~a~0_6 v_main_~x~0_7)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7} OutVars{main_~q~0=v_main_~q~0_7, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_7, main_~r~0=v_main_~r~0_7, main_~s~0=v_main_~s~0_7, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {384#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-14 21:10:57,337 INFO L290 TraceCheckUtils]: 17: Hoare triple {384#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} [98] L42-2-->L34-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] {384#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-14 21:10:57,337 INFO L290 TraceCheckUtils]: 18: Hoare triple {384#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} [102] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 1) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {384#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-14 21:10:57,339 INFO L272 TraceCheckUtils]: 19: Hoare triple {384#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} [105] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {394#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:10:57,339 INFO L290 TraceCheckUtils]: 20: Hoare triple {394#(<= 1 |__VERIFIER_assert_#in~cond|)} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {398#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:10:57,342 INFO L290 TraceCheckUtils]: 21: Hoare triple {398#(<= 1 __VERIFIER_assert_~cond)} [107] L11-->L12: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {332#false} is VALID [2022-04-14 21:10:57,342 INFO L290 TraceCheckUtils]: 22: Hoare triple {332#false} [111] L12-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {332#false} is VALID [2022-04-14 21:10:57,342 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 21:10:57,343 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 21:10:57,343 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:10:57,343 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2043674000] [2022-04-14 21:10:57,343 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:10:57,343 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1418571481] [2022-04-14 21:10:57,344 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1418571481] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:10:57,344 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:10:57,344 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 21:10:57,344 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [876273758] [2022-04-14 21:10:57,344 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:10:57,345 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-14 21:10:57,345 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:10:57,345 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:57,369 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:10:57,369 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 21:10:57,369 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:10:57,370 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 21:10:57,370 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 21:10:57,370 INFO L87 Difference]: Start difference. First operand 32 states and 41 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:57,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:57,600 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-14 21:10:57,600 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 21:10:57,600 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-14 21:10:57,600 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:10:57,601 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:57,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-14 21:10:57,604 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:57,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-14 21:10:57,606 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-14 21:10:57,669 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:10:57,671 INFO L225 Difference]: With dead ends: 47 [2022-04-14 21:10:57,671 INFO L226 Difference]: Without dead ends: 47 [2022-04-14 21:10:57,672 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 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-14 21:10:57,673 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 8 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 21:10:57,673 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 134 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 21:10:57,674 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-14 21:10:57,678 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 46. [2022-04-14 21:10:57,678 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:10:57,679 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:10:57,679 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:10:57,680 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:10:57,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:57,683 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-14 21:10:57,683 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-14 21:10:57,684 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:10:57,684 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:10:57,684 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-14 21:10:57,685 INFO L87 Difference]: Start difference. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-14 21:10:57,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:10:57,688 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-14 21:10:57,688 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-14 21:10:57,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:10:57,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:10:57,689 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:10:57,689 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:10:57,689 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:10:57,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 63 transitions. [2022-04-14 21:10:57,692 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 63 transitions. Word has length 23 [2022-04-14 21:10:57,692 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:10:57,692 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 63 transitions. [2022-04-14 21:10:57,693 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 21:10:57,693 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-14 21:10:57,693 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 21:10:57,694 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:10:57,694 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, 1] [2022-04-14 21:10:57,724 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-14 21:10:57,903 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:10:57,904 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:10:57,905 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:10:57,905 INFO L85 PathProgramCache]: Analyzing trace with hash 2115229340, now seen corresponding path program 1 times [2022-04-14 21:10:57,905 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:10:57,905 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1981924933] [2022-04-14 21:10:57,905 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:10:57,905 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:10:57,924 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:10:57,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2035704859] [2022-04-14 21:10:57,924 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:10:57,925 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:10:57,925 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:10:57,927 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-14 21:10:57,931 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-14 21:10:57,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:57,977 INFO L263 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-14 21:10:57,996 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:10:57,997 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:10:58,258 INFO L272 TraceCheckUtils]: 0: Hoare triple {593#true} [85] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#true} is VALID [2022-04-14 21:10:58,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {593#true} [87] 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) 10) (= (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] {593#true} is VALID [2022-04-14 21:10:58,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {593#true} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#true} is VALID [2022-04-14 21:10:58,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {593#true} {593#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#true} is VALID [2022-04-14 21:10:58,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {593#true} [86] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#true} is VALID [2022-04-14 21:10:58,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {593#true} [89] mainENTRY-->L24: 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_4, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_4, main_~r~0=v_main_~r~0_4, main_~s~0=v_main_~s~0_4, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {593#true} is VALID [2022-04-14 21:10:58,260 INFO L272 TraceCheckUtils]: 6: Hoare triple {593#true} [91] L24-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {593#true} is VALID [2022-04-14 21:10:58,261 INFO L290 TraceCheckUtils]: 7: Hoare triple {593#true} [93] assume_abort_if_notENTRY-->L8: 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] {619#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 21:10:58,262 INFO L290 TraceCheckUtils]: 8: Hoare triple {619#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [96] L8-->L8-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[] {623#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 21:10:58,262 INFO L290 TraceCheckUtils]: 9: Hoare triple {623#(not (= |assume_abort_if_not_#in~cond| 0))} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {623#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 21:10:58,263 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {623#(not (= |assume_abort_if_not_#in~cond| 0))} {593#true} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {630#(<= 1 main_~x~0)} is VALID [2022-04-14 21:10:58,263 INFO L272 TraceCheckUtils]: 11: Hoare triple {630#(<= 1 main_~x~0)} [92] L24-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {593#true} is VALID [2022-04-14 21:10:58,263 INFO L290 TraceCheckUtils]: 12: Hoare triple {593#true} [93] assume_abort_if_notENTRY-->L8: 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] {593#true} is VALID [2022-04-14 21:10:58,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {593#true} [96] L8-->L8-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[] {593#true} is VALID [2022-04-14 21:10:58,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {593#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#true} is VALID [2022-04-14 21:10:58,268 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {593#true} {630#(<= 1 main_~x~0)} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {630#(<= 1 main_~x~0)} is VALID [2022-04-14 21:10:58,269 INFO L290 TraceCheckUtils]: 16: Hoare triple {630#(<= 1 main_~x~0)} [94] L25-->L42-2: Formula: (and (= v_main_~r~0_7 0) (= v_main_~q~0_7 0) (= v_main_~s~0_7 1) (= v_main_~p~0_7 1) (= v_main_~b~0_8 v_main_~y~0_7) (= v_main_~a~0_6 v_main_~x~0_7)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7} OutVars{main_~q~0=v_main_~q~0_7, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_7, main_~r~0=v_main_~r~0_7, main_~s~0=v_main_~s~0_7, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-14 21:10:58,269 INFO L290 TraceCheckUtils]: 17: Hoare triple {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [98] L42-2-->L34-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] {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-14 21:10:58,270 INFO L290 TraceCheckUtils]: 18: Hoare triple {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [102] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 1) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-14 21:10:58,270 INFO L272 TraceCheckUtils]: 19: Hoare triple {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [105] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {593#true} is VALID [2022-04-14 21:10:58,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {593#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {593#true} is VALID [2022-04-14 21:10:58,271 INFO L290 TraceCheckUtils]: 21: Hoare triple {593#true} [108] L11-->L11-2: Formula: (not (= 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[] {593#true} is VALID [2022-04-14 21:10:58,271 INFO L290 TraceCheckUtils]: 22: Hoare triple {593#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#true} is VALID [2022-04-14 21:10:58,272 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {593#true} {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [124] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-14 21:10:58,273 INFO L272 TraceCheckUtils]: 24: Hoare triple {649#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [109] L35-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_11 v_main_~x~0_11) (* v_main_~r~0_11 v_main_~y~0_11)) v_main_~a~0_10) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_11, main_~p~0=v_main_~p~0_11, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~p~0, main_~r~0, main_~a~0] {674#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:10:58,274 INFO L290 TraceCheckUtils]: 25: Hoare triple {674#(<= 1 |__VERIFIER_assert_#in~cond|)} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {678#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:10:58,275 INFO L290 TraceCheckUtils]: 26: Hoare triple {678#(<= 1 __VERIFIER_assert_~cond)} [107] L11-->L12: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {594#false} is VALID [2022-04-14 21:10:58,275 INFO L290 TraceCheckUtils]: 27: Hoare triple {594#false} [111] L12-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {594#false} is VALID [2022-04-14 21:10:58,276 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-14 21:10:58,276 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 21:11:28,996 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:11:28,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1981924933] [2022-04-14 21:11:28,996 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:11:28,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2035704859] [2022-04-14 21:11:28,996 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2035704859] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 21:11:28,997 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 21:11:28,997 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2022-04-14 21:11:28,997 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2108577457] [2022-04-14 21:11:28,997 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 21:11:28,998 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 28 [2022-04-14 21:11:28,998 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:11:28,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 21:11:29,029 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:11:29,029 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 21:11:29,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:11:29,030 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 21:11:29,030 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-14 21:11:29,030 INFO L87 Difference]: Start difference. First operand 46 states and 63 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 21:11:29,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:29,470 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-14 21:11:29,470 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 21:11:29,471 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 28 [2022-04-14 21:11:29,471 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:11:29,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 21:11:29,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 63 transitions. [2022-04-14 21:11:29,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 21:11:29,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 63 transitions. [2022-04-14 21:11:29,476 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 63 transitions. [2022-04-14 21:11:29,540 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:11:29,542 INFO L225 Difference]: With dead ends: 51 [2022-04-14 21:11:29,542 INFO L226 Difference]: Without dead ends: 51 [2022-04-14 21:11:29,542 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 24 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-14 21:11:29,543 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 21 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 136 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 186 SdHoareTripleChecker+Invalid, 138 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 136 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 21:11:29,543 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 186 Invalid, 138 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 136 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 21:11:29,544 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-14 21:11:29,549 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-14 21:11:29,549 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:11:29,550 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:11:29,550 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:11:29,551 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:11:29,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:29,554 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-14 21:11:29,554 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-14 21:11:29,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:11:29,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:11:29,555 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-14 21:11:29,555 INFO L87 Difference]: Start difference. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-14 21:11:29,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:29,558 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-14 21:11:29,558 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-14 21:11:29,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:11:29,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:11:29,559 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:11:29,559 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:11:29,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-14 21:11:29,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 66 transitions. [2022-04-14 21:11:29,562 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 66 transitions. Word has length 28 [2022-04-14 21:11:29,562 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:11:29,562 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 66 transitions. [2022-04-14 21:11:29,562 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 21:11:29,563 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-14 21:11:29,563 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-14 21:11:29,563 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:11:29,563 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:11:29,596 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-14 21:11:29,787 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,SelfDestructingSolverStorable3 [2022-04-14 21:11:29,788 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:11:29,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:11:29,788 INFO L85 PathProgramCache]: Analyzing trace with hash -864241798, now seen corresponding path program 1 times [2022-04-14 21:11:29,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:11:29,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [13985840] [2022-04-14 21:11:29,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:11:29,789 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:11:29,805 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:11:29,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [664954043] [2022-04-14 21:11:29,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:11:29,806 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:11:29,806 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:11:29,815 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-14 21:11:29,816 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-14 21:11:29,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:11:29,858 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-14 21:11:29,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:11:29,869 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:11:30,115 INFO L272 TraceCheckUtils]: 0: Hoare triple {907#true} [85] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,115 INFO L290 TraceCheckUtils]: 1: Hoare triple {907#true} [87] 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) 10) (= (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] {907#true} is VALID [2022-04-14 21:11:30,116 INFO L290 TraceCheckUtils]: 2: Hoare triple {907#true} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,116 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {907#true} {907#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,116 INFO L272 TraceCheckUtils]: 4: Hoare triple {907#true} [86] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,116 INFO L290 TraceCheckUtils]: 5: Hoare triple {907#true} [89] mainENTRY-->L24: 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_4, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_4, main_~r~0=v_main_~r~0_4, main_~s~0=v_main_~s~0_4, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {907#true} is VALID [2022-04-14 21:11:30,116 INFO L272 TraceCheckUtils]: 6: Hoare triple {907#true} [91] L24-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {907#true} is VALID [2022-04-14 21:11:30,117 INFO L290 TraceCheckUtils]: 7: Hoare triple {907#true} [93] assume_abort_if_notENTRY-->L8: 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] {933#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 21:11:30,117 INFO L290 TraceCheckUtils]: 8: Hoare triple {933#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [96] L8-->L8-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[] {937#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 21:11:30,118 INFO L290 TraceCheckUtils]: 9: Hoare triple {937#(not (= |assume_abort_if_not_#in~cond| 0))} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {937#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 21:11:30,119 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {937#(not (= |assume_abort_if_not_#in~cond| 0))} {907#true} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {944#(<= 1 main_~x~0)} is VALID [2022-04-14 21:11:30,119 INFO L272 TraceCheckUtils]: 11: Hoare triple {944#(<= 1 main_~x~0)} [92] L24-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {907#true} is VALID [2022-04-14 21:11:30,119 INFO L290 TraceCheckUtils]: 12: Hoare triple {907#true} [93] assume_abort_if_notENTRY-->L8: 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] {907#true} is VALID [2022-04-14 21:11:30,119 INFO L290 TraceCheckUtils]: 13: Hoare triple {907#true} [96] L8-->L8-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[] {907#true} is VALID [2022-04-14 21:11:30,119 INFO L290 TraceCheckUtils]: 14: Hoare triple {907#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,120 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {907#true} {944#(<= 1 main_~x~0)} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {944#(<= 1 main_~x~0)} is VALID [2022-04-14 21:11:30,120 INFO L290 TraceCheckUtils]: 16: Hoare triple {944#(<= 1 main_~x~0)} [94] L25-->L42-2: Formula: (and (= v_main_~r~0_7 0) (= v_main_~q~0_7 0) (= v_main_~s~0_7 1) (= v_main_~p~0_7 1) (= v_main_~b~0_8 v_main_~y~0_7) (= v_main_~a~0_6 v_main_~x~0_7)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7} OutVars{main_~q~0=v_main_~q~0_7, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_7, main_~r~0=v_main_~r~0_7, main_~s~0=v_main_~s~0_7, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 21:11:30,121 INFO L290 TraceCheckUtils]: 17: Hoare triple {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [98] L42-2-->L34-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] {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 21:11:30,122 INFO L290 TraceCheckUtils]: 18: Hoare triple {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [102] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 1) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 21:11:30,122 INFO L272 TraceCheckUtils]: 19: Hoare triple {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [105] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {907#true} is VALID [2022-04-14 21:11:30,122 INFO L290 TraceCheckUtils]: 20: Hoare triple {907#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {907#true} is VALID [2022-04-14 21:11:30,122 INFO L290 TraceCheckUtils]: 21: Hoare triple {907#true} [108] L11-->L11-2: Formula: (not (= 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[] {907#true} is VALID [2022-04-14 21:11:30,122 INFO L290 TraceCheckUtils]: 22: Hoare triple {907#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,123 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {907#true} {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [124] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 21:11:30,124 INFO L272 TraceCheckUtils]: 24: Hoare triple {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [109] L35-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_11 v_main_~x~0_11) (* v_main_~r~0_11 v_main_~y~0_11)) v_main_~a~0_10) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_11, main_~p~0=v_main_~p~0_11, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~p~0, main_~r~0, main_~a~0] {907#true} is VALID [2022-04-14 21:11:30,124 INFO L290 TraceCheckUtils]: 25: Hoare triple {907#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {907#true} is VALID [2022-04-14 21:11:30,124 INFO L290 TraceCheckUtils]: 26: Hoare triple {907#true} [108] L11-->L11-2: Formula: (not (= 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[] {907#true} is VALID [2022-04-14 21:11:30,124 INFO L290 TraceCheckUtils]: 27: Hoare triple {907#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,125 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {907#true} {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [125] __VERIFIER_assertEXIT-->L36: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~p~0_11 v_main_~x~0_11) (* v_main_~r~0_11 v_main_~y~0_11)) v_main_~a~0_10) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_11, main_~p~0=v_main_~p~0_11, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~p~0, main_~r~0, main_~a~0] {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 21:11:30,126 INFO L272 TraceCheckUtils]: 29: Hoare triple {963#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [114] L36-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~s~0_11 v_main_~y~0_12) (* v_main_~q~0_11 v_main_~x~0_12)) v_main_~b~0_12) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~q~0=v_main_~q~0_11, main_~y~0=v_main_~y~0_12, main_~x~0=v_main_~x~0_12, main_~b~0=v_main_~b~0_12, main_~s~0=v_main_~s~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~s~0] {1003#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:11:30,126 INFO L290 TraceCheckUtils]: 30: Hoare triple {1003#(<= 1 |__VERIFIER_assert_#in~cond|)} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1007#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:11:30,127 INFO L290 TraceCheckUtils]: 31: Hoare triple {1007#(<= 1 __VERIFIER_assert_~cond)} [107] L11-->L12: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {908#false} is VALID [2022-04-14 21:11:30,127 INFO L290 TraceCheckUtils]: 32: Hoare triple {908#false} [111] L12-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {908#false} is VALID [2022-04-14 21:11:30,127 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-14 21:11:30,127 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 21:11:30,315 INFO L290 TraceCheckUtils]: 32: Hoare triple {908#false} [111] L12-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {908#false} is VALID [2022-04-14 21:11:30,316 INFO L290 TraceCheckUtils]: 31: Hoare triple {1007#(<= 1 __VERIFIER_assert_~cond)} [107] L11-->L12: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {908#false} is VALID [2022-04-14 21:11:30,316 INFO L290 TraceCheckUtils]: 30: Hoare triple {1003#(<= 1 |__VERIFIER_assert_#in~cond|)} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1007#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:11:30,317 INFO L272 TraceCheckUtils]: 29: Hoare triple {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} [114] L36-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~s~0_11 v_main_~y~0_12) (* v_main_~q~0_11 v_main_~x~0_12)) v_main_~b~0_12) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~q~0=v_main_~q~0_11, main_~y~0=v_main_~y~0_12, main_~x~0=v_main_~x~0_12, main_~b~0=v_main_~b~0_12, main_~s~0=v_main_~s~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~s~0] {1003#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:11:30,318 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {907#true} {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} [125] __VERIFIER_assertEXIT-->L36: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~p~0_11 v_main_~x~0_11) (* v_main_~r~0_11 v_main_~y~0_11)) v_main_~a~0_10) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_11, main_~p~0=v_main_~p~0_11, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~p~0, main_~r~0, main_~a~0] {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-14 21:11:30,319 INFO L290 TraceCheckUtils]: 27: Hoare triple {907#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,319 INFO L290 TraceCheckUtils]: 26: Hoare triple {907#true} [108] L11-->L11-2: Formula: (not (= 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[] {907#true} is VALID [2022-04-14 21:11:30,319 INFO L290 TraceCheckUtils]: 25: Hoare triple {907#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {907#true} is VALID [2022-04-14 21:11:30,319 INFO L272 TraceCheckUtils]: 24: Hoare triple {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} [109] L35-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_11 v_main_~x~0_11) (* v_main_~r~0_11 v_main_~y~0_11)) v_main_~a~0_10) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_11, main_~p~0=v_main_~p~0_11, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~p~0, main_~r~0, main_~a~0] {907#true} is VALID [2022-04-14 21:11:30,320 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {907#true} {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} [124] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-14 21:11:30,320 INFO L290 TraceCheckUtils]: 22: Hoare triple {907#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,320 INFO L290 TraceCheckUtils]: 21: Hoare triple {907#true} [108] L11-->L11-2: Formula: (not (= 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[] {907#true} is VALID [2022-04-14 21:11:30,320 INFO L290 TraceCheckUtils]: 20: Hoare triple {907#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {907#true} is VALID [2022-04-14 21:11:30,321 INFO L272 TraceCheckUtils]: 19: Hoare triple {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} [105] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {907#true} is VALID [2022-04-14 21:11:30,321 INFO L290 TraceCheckUtils]: 18: Hoare triple {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} [102] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 1) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-14 21:11:30,322 INFO L290 TraceCheckUtils]: 17: Hoare triple {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} [98] L42-2-->L34-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] {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-14 21:11:30,322 INFO L290 TraceCheckUtils]: 16: Hoare triple {907#true} [94] L25-->L42-2: Formula: (and (= v_main_~r~0_7 0) (= v_main_~q~0_7 0) (= v_main_~s~0_7 1) (= v_main_~p~0_7 1) (= v_main_~b~0_8 v_main_~y~0_7) (= v_main_~a~0_6 v_main_~x~0_7)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7} OutVars{main_~q~0=v_main_~q~0_7, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_7, main_~r~0=v_main_~r~0_7, main_~s~0=v_main_~s~0_7, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {1023#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-14 21:11:30,322 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {907#true} {907#true} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {907#true} is VALID [2022-04-14 21:11:30,323 INFO L290 TraceCheckUtils]: 14: Hoare triple {907#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,323 INFO L290 TraceCheckUtils]: 13: Hoare triple {907#true} [96] L8-->L8-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[] {907#true} is VALID [2022-04-14 21:11:30,323 INFO L290 TraceCheckUtils]: 12: Hoare triple {907#true} [93] assume_abort_if_notENTRY-->L8: 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] {907#true} is VALID [2022-04-14 21:11:30,323 INFO L272 TraceCheckUtils]: 11: Hoare triple {907#true} [92] L24-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {907#true} is VALID [2022-04-14 21:11:30,323 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {907#true} {907#true} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {907#true} is VALID [2022-04-14 21:11:30,323 INFO L290 TraceCheckUtils]: 9: Hoare triple {907#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,324 INFO L290 TraceCheckUtils]: 8: Hoare triple {907#true} [96] L8-->L8-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[] {907#true} is VALID [2022-04-14 21:11:30,324 INFO L290 TraceCheckUtils]: 7: Hoare triple {907#true} [93] assume_abort_if_notENTRY-->L8: 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] {907#true} is VALID [2022-04-14 21:11:30,324 INFO L272 TraceCheckUtils]: 6: Hoare triple {907#true} [91] L24-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {907#true} is VALID [2022-04-14 21:11:30,324 INFO L290 TraceCheckUtils]: 5: Hoare triple {907#true} [89] mainENTRY-->L24: 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_4, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_4, main_~r~0=v_main_~r~0_4, main_~s~0=v_main_~s~0_4, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {907#true} is VALID [2022-04-14 21:11:30,324 INFO L272 TraceCheckUtils]: 4: Hoare triple {907#true} [86] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,324 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {907#true} {907#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,325 INFO L290 TraceCheckUtils]: 2: Hoare triple {907#true} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,325 INFO L290 TraceCheckUtils]: 1: Hoare triple {907#true} [87] 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) 10) (= (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] {907#true} is VALID [2022-04-14 21:11:30,325 INFO L272 TraceCheckUtils]: 0: Hoare triple {907#true} [85] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#true} is VALID [2022-04-14 21:11:30,325 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-14 21:11:30,325 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:11:30,326 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [13985840] [2022-04-14 21:11:30,326 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:11:30,326 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [664954043] [2022-04-14 21:11:30,326 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [664954043] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-14 21:11:30,326 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-14 21:11:30,326 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-14 21:11:30,326 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [80304985] [2022-04-14 21:11:30,326 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:11:30,327 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-14 21:11:30,327 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:11:30,327 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:11:30,351 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:11:30,351 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 21:11:30,352 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:11:30,352 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 21:11:30,352 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-14 21:11:30,353 INFO L87 Difference]: Start difference. First operand 50 states and 66 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:11:30,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:30,651 INFO L93 Difference]: Finished difference Result 73 states and 105 transitions. [2022-04-14 21:11:30,651 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 21:11:30,651 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-14 21:11:30,652 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:11:30,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:11:30,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-14 21:11:30,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:11:30,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-14 21:11:30,655 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-14 21:11:30,712 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:11:30,714 INFO L225 Difference]: With dead ends: 73 [2022-04-14 21:11:30,714 INFO L226 Difference]: Without dead ends: 71 [2022-04-14 21:11:30,714 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-14 21:11:30,715 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 21:11:30,715 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 128 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 21:11:30,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-14 21:11:30,721 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-14 21:11:30,722 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:11:30,722 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-14 21:11:30,722 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-14 21:11:30,723 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-14 21:11:30,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:30,727 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-14 21:11:30,727 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-14 21:11:30,728 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:11:30,728 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:11:30,729 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-14 21:11:30,729 INFO L87 Difference]: Start difference. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-14 21:11:30,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:30,733 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-14 21:11:30,733 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-14 21:11:30,734 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:11:30,734 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:11:30,734 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:11:30,734 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:11:30,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-14 21:11:30,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 100 transitions. [2022-04-14 21:11:30,738 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 100 transitions. Word has length 33 [2022-04-14 21:11:30,738 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:11:30,738 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 100 transitions. [2022-04-14 21:11:30,739 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:11:30,739 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-14 21:11:30,739 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-14 21:11:30,739 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:11:30,740 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:11:30,769 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-14 21:11:30,967 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:11:30,968 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:11:30,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:11:30,968 INFO L85 PathProgramCache]: Analyzing trace with hash -120478471, now seen corresponding path program 1 times [2022-04-14 21:11:30,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:11:30,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1781719966] [2022-04-14 21:11:30,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:11:30,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:11:30,982 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:11:30,983 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [224043589] [2022-04-14 21:11:30,983 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:11:30,983 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:11:30,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:11:30,984 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-14 21:11:30,993 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-14 21:11:31,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:11:31,031 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-14 21:11:31,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:11:31,063 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:11:31,159 INFO L272 TraceCheckUtils]: 0: Hoare triple {1401#true} [85] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {1401#true} [87] 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) 10) (= (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] {1401#true} is VALID [2022-04-14 21:11:31,160 INFO L290 TraceCheckUtils]: 2: Hoare triple {1401#true} [90] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,160 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1401#true} {1401#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,161 INFO L272 TraceCheckUtils]: 4: Hoare triple {1401#true} [86] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,161 INFO L290 TraceCheckUtils]: 5: Hoare triple {1401#true} [89] mainENTRY-->L24: 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_4, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_5, main_~p~0=v_main_~p~0_4, main_~r~0=v_main_~r~0_4, main_~s~0=v_main_~s~0_4, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {1401#true} is VALID [2022-04-14 21:11:31,161 INFO L272 TraceCheckUtils]: 6: Hoare triple {1401#true} [91] L24-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1401#true} is VALID [2022-04-14 21:11:31,162 INFO L290 TraceCheckUtils]: 7: Hoare triple {1401#true} [93] assume_abort_if_notENTRY-->L8: 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] {1401#true} is VALID [2022-04-14 21:11:31,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {1401#true} [96] L8-->L8-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[] {1401#true} is VALID [2022-04-14 21:11:31,162 INFO L290 TraceCheckUtils]: 9: Hoare triple {1401#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,162 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1401#true} {1401#true} [122] assume_abort_if_notEXIT-->L24-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~x~0_10) 1 0)) InVars {main_~x~0=v_main_~x~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1401#true} is VALID [2022-04-14 21:11:31,162 INFO L272 TraceCheckUtils]: 11: Hoare triple {1401#true} [92] L24-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1401#true} is VALID [2022-04-14 21:11:31,162 INFO L290 TraceCheckUtils]: 12: Hoare triple {1401#true} [93] assume_abort_if_notENTRY-->L8: 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] {1401#true} is VALID [2022-04-14 21:11:31,162 INFO L290 TraceCheckUtils]: 13: Hoare triple {1401#true} [96] L8-->L8-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[] {1401#true} is VALID [2022-04-14 21:11:31,163 INFO L290 TraceCheckUtils]: 14: Hoare triple {1401#true} [99] L8-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,163 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1401#true} {1401#true} [123] assume_abort_if_notEXIT-->L25: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_10) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1401#true} is VALID [2022-04-14 21:11:31,164 INFO L290 TraceCheckUtils]: 16: Hoare triple {1401#true} [94] L25-->L42-2: Formula: (and (= v_main_~r~0_7 0) (= v_main_~q~0_7 0) (= v_main_~s~0_7 1) (= v_main_~p~0_7 1) (= v_main_~b~0_8 v_main_~y~0_7) (= v_main_~a~0_6 v_main_~x~0_7)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7} OutVars{main_~q~0=v_main_~q~0_7, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_7, main_~b~0=v_main_~b~0_8, main_~p~0=v_main_~p~0_7, main_~r~0=v_main_~r~0_7, main_~s~0=v_main_~s~0_7, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~r~0, main_~s~0, main_~a~0] {1401#true} is VALID [2022-04-14 21:11:31,164 INFO L290 TraceCheckUtils]: 17: Hoare triple {1401#true} [98] L42-2-->L34-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] {1401#true} is VALID [2022-04-14 21:11:31,164 INFO L290 TraceCheckUtils]: 18: Hoare triple {1401#true} [102] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 1) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1401#true} is VALID [2022-04-14 21:11:31,164 INFO L272 TraceCheckUtils]: 19: Hoare triple {1401#true} [105] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {1401#true} is VALID [2022-04-14 21:11:31,164 INFO L290 TraceCheckUtils]: 20: Hoare triple {1401#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1401#true} is VALID [2022-04-14 21:11:31,164 INFO L290 TraceCheckUtils]: 21: Hoare triple {1401#true} [108] L11-->L11-2: Formula: (not (= 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[] {1401#true} is VALID [2022-04-14 21:11:31,165 INFO L290 TraceCheckUtils]: 22: Hoare triple {1401#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,167 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1401#true} {1401#true} [124] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~p~0_10 v_main_~s~0_10) (* (- 1) (* v_main_~q~0_10 v_main_~r~0_10))) 1) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_10, main_~p~0=v_main_~p~0_10, main_~r~0=v_main_~r~0_10, main_~s~0=v_main_~s~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~p~0, main_~r~0, main_~s~0] {1401#true} is VALID [2022-04-14 21:11:31,167 INFO L272 TraceCheckUtils]: 24: Hoare triple {1401#true} [109] L35-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~p~0_11 v_main_~x~0_11) (* v_main_~r~0_11 v_main_~y~0_11)) v_main_~a~0_10) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_11, main_~p~0=v_main_~p~0_11, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~p~0, main_~r~0, main_~a~0] {1401#true} is VALID [2022-04-14 21:11:31,167 INFO L290 TraceCheckUtils]: 25: Hoare triple {1401#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1401#true} is VALID [2022-04-14 21:11:31,167 INFO L290 TraceCheckUtils]: 26: Hoare triple {1401#true} [108] L11-->L11-2: Formula: (not (= 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[] {1401#true} is VALID [2022-04-14 21:11:31,168 INFO L290 TraceCheckUtils]: 27: Hoare triple {1401#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,168 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1401#true} {1401#true} [125] __VERIFIER_assertEXIT-->L36: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~p~0_11 v_main_~x~0_11) (* v_main_~r~0_11 v_main_~y~0_11)) v_main_~a~0_10) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_11, main_~p~0=v_main_~p~0_11, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~p~0, main_~r~0, main_~a~0] {1401#true} is VALID [2022-04-14 21:11:31,168 INFO L272 TraceCheckUtils]: 29: Hoare triple {1401#true} [114] L36-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~s~0_11 v_main_~y~0_12) (* v_main_~q~0_11 v_main_~x~0_12)) v_main_~b~0_12) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~q~0=v_main_~q~0_11, main_~y~0=v_main_~y~0_12, main_~x~0=v_main_~x~0_12, main_~b~0=v_main_~b~0_12, main_~s~0=v_main_~s~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~s~0] {1401#true} is VALID [2022-04-14 21:11:31,168 INFO L290 TraceCheckUtils]: 30: Hoare triple {1401#true} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1401#true} is VALID [2022-04-14 21:11:31,168 INFO L290 TraceCheckUtils]: 31: Hoare triple {1401#true} [108] L11-->L11-2: Formula: (not (= 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[] {1401#true} is VALID [2022-04-14 21:11:31,168 INFO L290 TraceCheckUtils]: 32: Hoare triple {1401#true} [113] L11-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1401#true} is VALID [2022-04-14 21:11:31,169 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1401#true} {1401#true} [126] __VERIFIER_assertEXIT-->L37: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~s~0_11 v_main_~y~0_12) (* v_main_~q~0_11 v_main_~x~0_12)) v_main_~b~0_12) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~q~0=v_main_~q~0_11, main_~y~0=v_main_~y~0_12, main_~x~0=v_main_~x~0_12, main_~b~0=v_main_~b~0_12, main_~s~0=v_main_~s~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~s~0] {1401#true} is VALID [2022-04-14 21:11:31,170 INFO L290 TraceCheckUtils]: 34: Hoare triple {1401#true} [116] L37-->L34-3: Formula: (= v_main_~a~0_8 v_main_~b~0_10) InVars {main_~b~0=v_main_~b~0_10, main_~a~0=v_main_~a~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~a~0=v_main_~a~0_8} AuxVars[] AssignedVars[] {1508#(= main_~b~0 main_~a~0)} is VALID [2022-04-14 21:11:31,170 INFO L272 TraceCheckUtils]: 35: Hoare triple {1508#(= main_~b~0 main_~a~0)} [100] L34-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_4| (ite (= (+ (* (- 1) v_main_~b~0_13) v_main_~a~0_11) 0) 1 0)) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {1512#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:11:31,171 INFO L290 TraceCheckUtils]: 36: Hoare triple {1512#(<= 1 |__VERIFIER_assert_#in~cond|)} [104] __VERIFIER_assertENTRY-->L11: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1516#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:11:31,172 INFO L290 TraceCheckUtils]: 37: Hoare triple {1516#(<= 1 __VERIFIER_assert_~cond)} [107] L11-->L12: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1402#false} is VALID [2022-04-14 21:11:31,172 INFO L290 TraceCheckUtils]: 38: Hoare triple {1402#false} [111] L12-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1402#false} is VALID [2022-04-14 21:11:31,174 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-14 21:11:31,174 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 21:11:31,174 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:11:31,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1781719966] [2022-04-14 21:11:31,174 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:11:31,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [224043589] [2022-04-14 21:11:31,174 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [224043589] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:11:31,174 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:11:31,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 21:11:31,175 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1410674950] [2022-04-14 21:11:31,175 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:11:31,176 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-14 21:11:31,178 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:11:31,178 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 21:11:31,203 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-14 21:11:31,203 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 21:11:31,203 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:11:31,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 21:11:31,205 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 21:11:31,205 INFO L87 Difference]: Start difference. First operand 71 states and 100 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 21:11:31,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:31,377 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-14 21:11:31,377 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 21:11:31,378 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-14 21:11:31,378 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:11:31,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 21:11:31,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-14 21:11:31,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 21:11:31,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-14 21:11:31,381 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 50 transitions. [2022-04-14 21:11:31,423 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:11:31,425 INFO L225 Difference]: With dead ends: 85 [2022-04-14 21:11:31,426 INFO L226 Difference]: Without dead ends: 85 [2022-04-14 21:11:31,426 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 35 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-14 21:11:31,427 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 5 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 21:11:31,427 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 144 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 21:11:31,427 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-04-14 21:11:31,433 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 78. [2022-04-14 21:11:31,433 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:11:31,433 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-14 21:11:31,434 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-14 21:11:31,434 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-14 21:11:31,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:31,438 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-14 21:11:31,439 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-14 21:11:31,439 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:11:31,439 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:11:31,440 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-14 21:11:31,440 INFO L87 Difference]: Start difference. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-14 21:11:31,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:11:31,445 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-14 21:11:31,445 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-14 21:11:31,446 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:11:31,446 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:11:31,446 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:11:31,446 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:11:31,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-14 21:11:31,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 109 transitions. [2022-04-14 21:11:31,450 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 109 transitions. Word has length 39 [2022-04-14 21:11:31,450 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:11:31,450 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 109 transitions. [2022-04-14 21:11:31,451 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 21:11:31,451 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 109 transitions. [2022-04-14 21:11:31,451 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-14 21:11:31,451 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:11:31,452 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, 1, 1] [2022-04-14 21:11:31,479 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-14 21:11:31,667 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:11:31,667 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:11:31,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:11:31,668 INFO L85 PathProgramCache]: Analyzing trace with hash -1628466672, now seen corresponding path program 1 times [2022-04-14 21:11:31,668 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:11:31,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [714535647] [2022-04-14 21:11:31,668 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:11:31,668 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:11:31,686 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:11:31,686 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [311346303] [2022-04-14 21:11:31,686 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:11:31,686 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:11:31,686 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:11:31,687 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-14 21:11:31,712 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-14 21:11:31,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-14 21:11:31,739 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-14 21:11:31,753 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-14 21:11:31,812 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-14 21:11:31,812 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-14 21:11:31,813 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 21:11:31,849 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-14 21:11:32,027 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:11:32,030 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:11:32,033 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 21:11:32,068 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 09:11:32 BasicIcfg [2022-04-14 21:11:32,069 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 21:11:32,070 INFO L158 Benchmark]: Toolchain (without parser) took 37304.81ms. Allocated memory was 179.3MB in the beginning and 217.1MB in the end (delta: 37.7MB). Free memory was 129.0MB in the beginning and 147.0MB in the end (delta: -18.1MB). Peak memory consumption was 19.7MB. Max. memory is 8.0GB. [2022-04-14 21:11:32,070 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 179.3MB. Free memory is still 145.3MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 21:11:32,070 INFO L158 Benchmark]: CACSL2BoogieTranslator took 302.22ms. Allocated memory is still 179.3MB. Free memory was 128.7MB in the beginning and 154.6MB in the end (delta: -25.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 21:11:32,070 INFO L158 Benchmark]: Boogie Preprocessor took 54.53ms. Allocated memory is still 179.3MB. Free memory was 154.6MB in the beginning and 153.1MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 21:11:32,070 INFO L158 Benchmark]: RCFGBuilder took 286.64ms. Allocated memory is still 179.3MB. Free memory was 153.1MB in the beginning and 141.5MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 21:11:32,070 INFO L158 Benchmark]: IcfgTransformer took 36.94ms. Allocated memory is still 179.3MB. Free memory was 141.2MB in the beginning and 139.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 21:11:32,071 INFO L158 Benchmark]: TraceAbstraction took 36615.05ms. Allocated memory was 179.3MB in the beginning and 217.1MB in the end (delta: 37.7MB). Free memory was 139.2MB in the beginning and 147.0MB in the end (delta: -7.9MB). Peak memory consumption was 30.4MB. Max. memory is 8.0GB. [2022-04-14 21:11:32,072 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 179.3MB. Free memory is still 145.3MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 302.22ms. Allocated memory is still 179.3MB. Free memory was 128.7MB in the beginning and 154.6MB in the end (delta: -25.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 54.53ms. Allocated memory is still 179.3MB. Free memory was 154.6MB in the beginning and 153.1MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 286.64ms. Allocated memory is still 179.3MB. Free memory was 153.1MB in the beginning and 141.5MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 36.94ms. Allocated memory is still 179.3MB. Free memory was 141.2MB in the beginning and 139.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 36615.05ms. Allocated memory was 179.3MB in the beginning and 217.1MB in the end (delta: 37.7MB). Free memory was 139.2MB in the beginning and 147.0MB in the end (delta: -7.9MB). Peak memory consumption was 30.4MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 13]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L18] int counter = 0; VAL [\old(counter)=6, counter=0] [L20] long long a, b, p, q, r, s; [L21] int x, y; [L22] x = __VERIFIER_nondet_int() [L23] y = __VERIFIER_nondet_int() [L24] CALL assume_abort_if_not(x >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L8] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L24] RET assume_abort_if_not(x >= 1) VAL [\old(counter)=0, counter=0, x=3, y=1] [L25] CALL assume_abort_if_not(y >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L8] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L25] RET assume_abort_if_not(y >= 1) VAL [\old(counter)=0, counter=0, x=3, y=1] [L27] a = x [L28] b = y [L29] p = 1 [L30] q = 0 [L31] r = 0 [L32] s = 1 VAL [\old(counter)=0, a=3, b=1, counter=0, p=1, q=0, r=0, s=1, x=3, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=3, b=1, counter=1, counter++=0, p=1, q=0, r=0, s=1, x=3, y=1] [L34] COND TRUE counter++<1 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=3, b=1, counter=1, p=1, q=0, r=0, s=1, x=3, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=3, b=1, counter=1, p=1, q=0, r=0, s=1, x=3, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=3, b=1, counter=1, p=1, q=0, r=0, s=1, x=3, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=3, b=1, counter=1, p=1, q=0, r=0, s=1, x=3, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=2, b=1, counter=1, p=1, q=0, r=-1, s=1, x=3, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=2, b=1, counter=2, counter++=1, p=1, q=0, r=-1, s=1, x=3, y=1] [L34] COND FALSE !(counter++<1) [L53] CALL __VERIFIER_assert(a - b == 0) VAL [\old(cond)=0, \old(counter)=0, counter=2] [L11] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=2] [L13] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=2] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 35 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 36.5s, OverallIterations: 7, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 92 SdHoareTripleChecker+Valid, 0.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 66 mSDsluCounter, 702 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 460 mSDsCounter, 29 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 338 IncrementalHoareTripleChecker+Invalid, 367 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 29 mSolverCounterUnsat, 242 mSDtfsCounter, 338 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 182 GetRequests, 150 SyntacticMatches, 2 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=78occurred in iteration=6, InterpolantAutomatonStates: 32, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 6 MinimizatonAttempts, 10 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 32.1s InterpolantComputationTime, 210 NumberOfCodeBlocks, 210 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 194 ConstructedInterpolants, 0 QuantifiedInterpolants, 451 SizeOfPredicates, 6 NumberOfNonLiveVariables, 452 ConjunctsInSsa, 42 ConjunctsInUnsatCore, 7 InterpolantComputations, 5 PerfectInterpolantSequences, 58/64 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-14 21:11:32,091 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...