Call_provers.analyze_result defaults to unknown
I found (by modifying alt-ergo configuration to add an incorrect switch) that `Call_provers.analyze_result` returns `Unknown` if no regex matches the prover output. This seems incorrect to me, I thought that `Unknown` meant that the prover returned `Unknown` explicitly. Instead it should return `Failure` or even `HighFailure`, which is also the documentation:
```
type prover_answer =
| Valid
(** The task is valid according to the prover *)
| Invalid
(** The task is invalid *)
| Timeout
(** the task timeouts, ie it takes more time than specified *)
| OutOfMemory
(** the task runs out of memory *)
| StepLimitExceeded
(** the task required more steps than the limit provided *)
| Unknown of string
(** The prover can't determine if the task is valid *)
| Failure of string
(** The prover reports a failure *)
| HighFailure
(** An error occured during the call to the prover or none
of the given regexps match the output of the prover *)
```
What do you think?
issue