LeikeHeizmann-TACAS2014-Ex7_true-termination.c

loading
details
attribute value
description
owner Johannes Waldmann
uploaded 2017-08-17 03:45:04.0
disk size 711 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
/*
 * Program from Example 7 of
 * 2014TACAS - Leike, Heizmann - Ranking Templates for Linear Loops
 * 
 * In the conference version of this paper, the authors claimed that this
 * lasso program does not have a multiphase ranking function. However, this
 * lasso program has the following 2-phase ranking function.
 *     f_0(x, y) = 2q + z
 *     f_1(x, y) = q
 * The authors thank Samir Genaim for pointing out this error in their paper.
 *
 * Date: 2014-06-29
 * Author: Jan Leike
 */

typedef enum {false, true} bool;

extern int __VERIFIER_nondet_int(void);

int main() {
    int q, z;
	q = __VERIFIER_nondet_int();
	z = __VERIFIER_nondet_int();
	while (q > 0) {
		q = q + z - 1;
		z = -z;
	}
	return 0;
}
popout

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

actions get anonymous link download benchmark