@ file : Suppress (" UN CHECK ED _ CAST ", Ġ" UNUSED _ VARIABLE ") Ċ Ċ package Ġai . hyper graph . kot ling rad . samples Ċ Ċ import Ġai . hyper graph . kot ling rad . type level .* Ċ import Ġai . hyper graph . kot ling rad . type level . x Ċ import Ġai . hyper graph . kot ling rad . type level . y Ċ import Ġai . hyper graph . kot ling rad . type level . z Ċ Ċ fun Ġmain () Ġ{ ĊĠ Ġval Ġxyz : ĠEx < XX , ĠXX , ĠXX > Ġby Ġx Ġ+ Ġ( y Ġ+ Ġz ) Ġ* Ġ 2 ; Ġprintln ( xyz ) ĊĠ Ġval Ġx _ z : ĠEx < XX , ĠO O , ĠXX > Ġby Ġxyz ( y Ġto Ġ 1 ); Ġprintln ( x _ z ) ĊĠ Ġval Ġout : ĠInt Ġ= Ġxyz ( x Ġto Ġ 1 , Ġz Ġto Ġ 3 )( y Ġto Ġ 2 ). also Ġ{ Ġprintln (" out Ġ= Ġ$ it ") Ġ} ĊĊĠ Ġval Ġf Ġby Ġx Ġ+ Ġy Ġ+ Ġz Ġ* Ġ 3 ; Ġprintln ( f ) ĊĠ Ġval Ġf 1 Ġby Ġf ( x Ġto Ġ 1 )( y Ġto Ġ 2 ); Ġprintln ( f 1 ) ĊĠ Ġval Ġj : ĠInt Ġ= Ġf 1 ( z Ġto Ġ 3 ); Ġprintln (" j Ġ= Ġ$ j ") ĊĊĠ Ġval Ġq Ġby Ġx Ġ+ Ġy Ġ+ Ġz Ġ+ Ġy Ġ+ Ġ 0 . 0 ; Ġprintln ( q ) ĊĠ Ġval Ġtotal App Ġ= Ġq ( x Ġto Ġ 1 . 0 , Ġy Ġto Ġ 2 . 0 , Ġz Ġto Ġ 3 . 0 ) Ġ// ĠName Ġresolution ĊĠ Ġprintln (" Should Ġbe Ġ 8 : Ġ$ total App ") ĊĠ Ġval Ġpartial App Ġ= Ġq ( x Ġto Ġ 1 . 0 , Ġy Ġto Ġ 1 . 0 )( z Ġto Ġ 1 . 0 ) Ġ// ĠCur ry ing Ġis Ġpossible ĊĠ Ġprintln (" Should Ġbe Ġ 4 : Ġ$ partial App ") ĊĠ Ġval Ġpartial App 2 Ġ= Ġq ( x Ġto Ġ 1 . 0 )( y Ġto Ġ 1 . 0 , Ġz Ġto Ġ 1 . 0 ) Ġ// ĠAny Ġar ity Ġis Ġpossible ĊĠ Ġprintln (" Should Ġbe Ġ 4 : Ġ$ partial App 2 ") ĊĠ Ġval Ġpartial App 3 Ġ= Ġq ( z Ġto Ġ 1 . 0 )( x Ġto Ġ 1 . 0 , Ġy Ġto Ġ 1 . 0 ) Ġ// ĠAny Ġorder Ġis Ġpossible ĊĠ Ġprintln (" Should Ġbe Ġ 4 : Ġ$ partial App 3 ") ĊĊĠ Ġval Ġt Ġ= Ġ( x Ġ+ Ġz ) Ġ/ Ġ( z Ġ+ Ġy Ġ+ Ġ 0 . 0 ) ĊĠ Ġval Ġv Ġ= Ġt ( y Ġto Ġ 4 . 0 ) ĊĠ Ġval Ġl Ġ= Ġt ( x Ġto Ġ 1 . 0 )( z Ġto Ġ 2 . 0 ) ĊĠ Ġval Ġr Ġ= Ġt ( x Ġto Ġ 1 . 0 )( z Ġto Ġ 2 . 0 )( y Ġto Ġ 3 . 0 ) Ġ// ĠFull Ġcur ry ing ĊĊĠ Ġval Ġo Ġ= Ġx Ġ+ Ġz Ġ+ Ġ 0 . 0 ĊĠ Ġ// val Ġk Ġ= Ġo ( y Ġto Ġ 4 . 0 ) Ġ// ĠDoes Ġnot Ġcompile ĊĠ Ġval Ġs Ġ= Ġ( o ( x Ġto Ġ 1 . 0 ) Ġ+ Ġy )( z Ġto Ġ 4 . 0 )( y Ġto Ġ 3 . 0 ) ĊĊĠ Ġval Ġp Ġ= Ġx Ġ+ Ġy Ġ* Ġz Ġ+ Ġ 0 . 0 ĊĠ Ġval Ġtotal App 2 Ġ= Ġp ( x Ġto Ġ 1 . 0 , Ġy Ġto Ġ 2 . 0 , Ġz Ġto Ġ 3 . 0 ) ĊĠ Ġprintln (" Should Ġbe Ġ 7 : Ġ$ total App 2 ") ĊĠ Ġval Ġd Ġ= Ġx Ġ+ Ġz Ġ* Ġx ĊĠ Ġprintln (" Should Ġbe Ġ 1 5 : Ġ" Ġ+ Ġd ( x Ġto Ġ 3 . 0 , Ġz Ġto Ġ 4 . 0 )) ĊĠ Ġprintln (" Should Ġbe Ġ 3 0 : Ġ" Ġ+ Ġ( 2 . 0 Ġ* Ġd )( x Ġto Ġ 3 . 0 , Ġz Ġto Ġ 4 . 0 )) Ċ }