代數運算2

2021-05-24 22:22:49 字數 1991 閱讀 2932

(setq  zero  (lambda (s z) z))

(setq  one  (lambda (s z) (funcall  s z) ))

(setq  two  (lambda (s z) (funcall s (funcall  s z) )))

(setq  three  (lambda (s z) (funcall s (funcall s (funcall  s z) ))))

(setq  four  (lambda (s z)(funcall s (funcall s (funcall s (funcall  s z) )))))

(setq  five  (lambda (s z)(funcall s (funcall s (funcall s (funcall s (funcall  s z) ))))))

(defun chenbing (value)

(list  'chenbing value)

(funcall one 'chenbing nil)

(funcall two 'chenbing nil)

(funcall three 'chenbing nil)

(defun  myif (con then else)

(funcall con then else)

(defun true (u v)

u(defun false (u v)

v(defun wrap (f)

(lambda (n)

(cons 'false  (myif (car n) (cdr n) (funcall f (cdr n) ) ) )

(defun  subone (n)

(lambda (s z)

(cdr  (funcall n (wrap s ) (cons 'true z) ))

(setq  test (subone five) )

(funcall test 'chenbing nil)

(defun  iszero (n)

(funcall n  (lambda(x) 'false) 'true)

(defun addone (n)       

(lambda (f x)

(funcall f  (funcall  n  f  x) )

(defun  add  (m  n)

(funcall m  addone  n)

(setq result (add  four five) )

(funcall  result  'chenbing  nil)

(defun  sum  (n)

(myif  (iszero  n)  one  (add n (sum  (subone  n) ) ) ) 

(defun  sum  (n)

(myif  (iszero  n)  one   (sum  (subone  n) ) ) 

(defun  sum  (n)

(myif  (iszero  n)  one   (addone (sum  (subone  n) ) )  )

(setq result (sum  zero) )

(funcall  result  'chenbing  nil)

(setq result (sum  one) )

(funcall  result  'chenbing  nil)

(setq result (sum  two) )

(funcall  result  'chenbing  nil)

(setq result (sum  three) )

(funcall  result  'chenbing  nil)

(setq result (sum  four) )

(funcall  result  'chenbing  nil)

(setq result (sum  five) )

(funcall  result  'chenbing  nil)

基於MapReduce的關係代數運算 2

1 自然連線 map函式 對於r中的每個元組 a,b 生成鍵值對 b,r,a 對於s中的每個元組 b,c 生成鍵值對 b,s,c 即與b關聯的元組列表由來自r和s中的具有共同b值的元組組合而成 2 分組和聚合運算 map函式 對每個元組 a,b,c 生成鍵值對 a,b reduce函式 每個鍵a代表...

關係代數運算

五種基本關係代數運算 集合 某些指定的物件集在一起就成了乙個集合,其中每乙個物件叫元素。集合的三特性 確定性 互異性 無序性。1 確定性 指的是概念清晰,物件描述明確,不能含混不清 不能模稜兩可。2 互異性 對於乙個給定的集合,它的任何兩個元素都是不同的。3 無序性 給定的乙個集合,集合內的元素間位...

關係代數運算除

1.關係運算的分類 1 基本運算操作 並 差 笛卡爾積 投影和選擇。2 組合運算操作 交 聯接 自然聯接和除。另外,還有幾種擴充的關係代數操作 外聯接 左外聯接和右外聯接 外部並和半聯接。2.除法定義的理解 設兩個關係r和s的元數分別為r和s r s 0 那麼r s是乙個 r s 元的元組的集合。r...