get_ng2 :: [Literal] -> [CClause]
get_ng2 b =
  let
    pb       = [ a | PAtom a <- b ]
    nb       = [ a | NAtom a <- b ]
    clauses1 = [ ([BLit b], [ALit atom]) | atom <- pb ]
    clauses2 = [ ([BLit b, ALit atom],[]) | atom <- nb ]
  in
  clauses1 Prelude.++ clauses2
get_ng2 :: [Literal] -> [CClause]
get_ng2 b =
  let
    pb       = [ a | PAtom a <- b ]
    nb       = [ a | NAtom a <- b ]
    clauses1 = [ ([BLit b], [ALit atom]) | atom <- pb ]
    clauses2 = [ ([BLit b, ALit atom],[]) | atom <- nb ]
  in
  clauses1 Prelude.++ clauses2
get_ng2 b =
  let
    pb       = [ a | PAtom a <- b ]
    nb       = [ a | NAtom a <- b ]
    clauses1 = [ ([BLit b], [ALit atom]) | atom <- pb ]
    clauses2 = [ ([BLit b, ALit atom],[]) | atom <- nb ]
  in
  clauses1 Prelude.++ clauses2