blob: d782cfcc8bd87017d6ce5054cd03802a4e19c3be (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# Omega Calculator v1.2 (based on Omega Library 1.2, August, 2000):
# Symbolic n, f(1), f_last, f_first;
#
#
# True := { [] : 1 = 1 };
#
#
# old_R1 := { [x] -> [] : (1 <= x <= n and f(x) > 0)};
#
# old_R2 := { [x] -> [] : (1 <= x <= n and f(x) <=0)};
#
# True - range old_R1 - range old_R2;
{ 1 <= n && UNKNOWN} union
{ n <= 0}
#
#
# R1 := { [x] -> [] : (3 <= x <= n-1 and f(x) > 0)
# or (1 <= n and f_last > 0)
# or (1 <= n and f_first > 0) };
#
# R2 := { [x] -> [] : (3 <= x <= n-1 and f(x) <=0)
# or (1 <= n and f_last <=0)
# or (1 <= n and f_first <=0) };
#
# True - range R1 - range R2;
{ n <= 0}
#
#
# R1a := { [x] -> [] : (1 <= x <= n and (f(x) > 0 or f_first > 0 or f_last > 0)) };
#
# R2a := { [x] -> [] : (1 <= x <= n and (f(x) <=0 or f_first <=0 or f_last <=0)) };
#
# True - range R1a - range R2a;
{ f_last <= 0 && n <= 0} union
{ n <= 0 && 1 <= f_last}
#
|