예제 #1
0
        public static Goal AllOne(this KRunner k, object lst)
        {
            var d = k.Fresh();

            return(k.Any(
                       k.Eq(lst, null),
                       k.All(
                           k.Eq(lst, k.Pair(1, d)),
                           k.Recurse(() => k.AllOne(d)))));
        }