Piecewise_true-termination.c

loading
details
attribute value
description
owner Johannes Waldmann
uploaded 2017-08-17 03:45:05.0
disk size 540 Bytes
downloadable true
type
attribute value
name no_type
processor id 1
description this is the default benchmark type for rejected benchmarks and benchmarks that are not associated with a type.
owning community none
loading contents
/*
 * Date: 08.10.2013
 * Author: leike@informatik.uni-freiburg.de
 *
 * An example tailored to the piecewise ranking template.
 *
 * A ranking function is
 *
 * f(p, q) = min(p, q).
 *
 */

typedef enum {false, true} bool;

extern int __VERIFIER_nondet_int(void);

int main()
{
    int p, q;
	q = __VERIFIER_nondet_int();
	p = __VERIFIER_nondet_int();
	while (q > 0 && p > 0 && p != q) {
		if (q < p) {
			q = q - 1;
			p = __VERIFIER_nondet_int();
		} else {if (p < q) {
			p = p - 1;
			q = __VERIFIER_nondet_int();
		}}
	}
	return 0;
}
popout

content may be truncated. 'popout' for larger text window.

actions get anonymous link download benchmark