t3x.org / nss / hyper.html

(Nils' Scheme Snippets)

 
Paren matching: ON  |  Category: math  |  Overview  |  Scheme Books  |  License
 

(hyper integer1 integer2 integer3) => integer

 
Purpose
Compute a hyper(n) b.
 
Arguments
n order of hyper operator
a factor
b factor
 
Example
(hyper 4 3 3) => 7625597484987
(define (hyper n a b)
  (cond ((= n 0) (+ b 1))
        ((= n 1) (+ a b))
        ((= b 1) a)
        ((= n 2) (* a b))
        ((= n 3) (expt a b))
        ((= n 4) (expt a (hyper n a (- b 1))))
        ((> n 4) (hyper (- n 1) a (hyper n a (- b 1))))))

Copyright (C) 2007 Nils M Holm <nmh @ t3x . org>