Escribí la función utilizada para descomponer una función booleana, el problema es que la compilación lo obtengo: "Advertencia 5: esta aplicación de función es parcial, tal vez falten algunos argumentos". ¿Cómo puedo resolver este problema? He puesto mal la coincidencia de golpeteo o No puedo ejecutar esta operación con la coincidencia de patronesProblema con la coincidencia de patrones en ocaml
el código es el siguiente:
let rec decomposition state_init state prec formula =
match formula with
And form -> (fun() ->
let f1 = List.hd form in
let f2 = And(List.tl form)in
let new_state = Forms (state_init,f1) in
decomposition state_init new_state state f1;
decomposition state_init new_state state f2;
Hashtbl.add graph new_state (("",false,state :: []) , []) ;
let x = Hashtbl.find graph state in
let succ = state :: snd x in
let (desc,last,ptrs) = fst x in
Hashtbl.replace graph state (("And-node",last,ptrs) , succ))