diff options
| author | kr.angelov <kr.angelov@gmail.com> | 2012-09-18 09:18:48 +0000 |
|---|---|---|
| committer | kr.angelov <kr.angelov@gmail.com> | 2012-09-18 09:18:48 +0000 |
| commit | a307ed6c75c2dbf116170f0dc1904e6725ac74f3 (patch) | |
| tree | ce17c97d202a67b140947ac50f8957333b37b0ce /src/runtime/c/pgf/reader.c | |
| parent | 91ca7c9a1be37b7cc943a1252199b724d1ef5d87 (diff) | |
the C runtime now has a type prob_t which is used only for probability values
Diffstat (limited to 'src/runtime/c/pgf/reader.c')
| -rw-r--r-- | src/runtime/c/pgf/reader.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/runtime/c/pgf/reader.c b/src/runtime/c/pgf/reader.c index 8e2a634e8..81ec46f31 100644 --- a/src/runtime/c/pgf/reader.c +++ b/src/runtime/c/pgf/reader.c @@ -655,11 +655,11 @@ pgf_compute_meta_probs(GuMapItor* fn, const void* key, void* value, GuExn* err) cat->name = name; - double mass = 0; + prob_t mass = 0; for (size_t i = 0; i < cat->n_functions; i++) { mass += cat->functions[i].prob; } - cat->meta_prob = - log(fabs(1 - mass)); + cat->meta_prob = (mass > 1) ? INFINITY : - log(1 - mass); cat->meta_token_prob = INFINITY; cat->meta_child_probs = NULL; } |
