; @origtpdbfilename ./TRS/TRCSR/Ex9_BLR02_FR.trs
; @xtcfilename "./TRS_Standard/Transformed_CSR_04/Ex9_BLR02_FR.xml"
(format TRS)
(fun filter 3)
(fun cons 2)
(fun |0| 0)
(fun n__filter 3)
(fun activate 1)
(fun s 1)
(fun sieve 1)
(fun n__sieve 1)
(fun nats 1)
(fun n__nats 1)
(fun n__s 1)
(fun zprimes 0)
(rule (filter (cons X Y) |0| M) (cons |0| (n__filter (activate Y) M M)))
(rule (filter (cons X Y) (s N) M) (cons X (n__filter (activate Y) N M)))
(rule (sieve (cons |0| Y)) (cons |0| (n__sieve (activate Y))))
(rule (sieve (cons (s N) Y)) (cons (s N) (n__sieve (n__filter (activate Y) N N))))
(rule (nats N) (cons N (n__nats (n__s N))))
(rule zprimes (sieve (nats (s (s |0|)))))
(rule (filter X1 X2 X3) (n__filter X1 X2 X3))
(rule (sieve X) (n__sieve X))
(rule (nats X) (n__nats X))
(rule (s X) (n__s X))
(rule (activate (n__filter X1 X2 X3)) (filter (activate X1) (activate X2) (activate X3)))
(rule (activate (n__sieve X)) (sieve (activate X)))
(rule (activate (n__nats X)) (nats (activate X)))
(rule (activate (n__s X)) (s (activate X)))
(rule (activate X) X)