(define square (lambda (n) (* n n))) (define pow2 (lambda (n m) (if (zero? m) 1 (square (pow n m)) ))) (define pow (lambda (n m) (if (zero? m) 1 (if (zero? (modulo m 2)) (pow2 n (quotient m 2)) (* n (pow2 n (/ (- m 1) 2))) )))) (define choose_n_by_2n (lambda (n) (let loop ((i (- (* 2 n) 1))(j (- n 1))) (if (zero? j) 2 (* (/ i j)(loop (- i 1)(- j 1))) )))) (* 6 (let sigma ((n 500)) (if (zero? n) (/ 1 2) (+ (/ (choose_n_by_2n n) (* 2 (square (square (pow 2 n))) (+ (* 2 n) 1))) (sigma (- n 1))) )))