Commit Graph

190 Commits

Author SHA1 Message Date
kr.angelov
2893397fbb bugfix in the statistical parser 2013-03-11 14:47:43 +00:00
kr.angelov
5a54596fe8 the parser in the C runtime should not crash if the start category is not defined 2013-02-19 12:08:48 +00:00
kr.angelov
f86dcb6572 bugfix in the grammar reader in the C runtime 2013-02-19 12:04:10 +00:00
kr.angelov
ffb17bd26a bugfix in the linearizer for the C runtime 2013-02-13 15:39:01 +00:00
kr.angelov
55203110bb now the beam size for the statistical parser can be configured by using the flag beam_size in the top-level concrete module 2013-02-12 10:53:13 +00:00
kr.angelov
1f77afcfce the statistical parser now uses a baseline lexical estimation of the beam size 2013-02-12 09:41:32 +00:00
kr.angelov
a6b35a9053 the class PgfConcr from the Python binding now has a property name which returns the name of the concrete syntax 2013-02-11 15:51:26 +00:00
kr.angelov
0b7b939aca refactoring: now all named objects in the C runtime have an explicit name field 2013-02-11 14:10:54 +00:00
kr.angelov
56c8f91d19 remove the pgf2yaml tool which was both broken and redundant. The declarations for generic programming from data.c are removed as well 2013-02-11 13:51:12 +00:00
kr.angelov
ff25ba8f90 the grammar reader in the C runtime is completely rewritten and it doesn't use the generic programming API 2013-02-11 10:16:58 +00:00
kr.angelov
e9b5557c6c This patch removes Gregoire's parse_tokens function in the python binding and adds another implementation which builds on the existing API for lexers in the C runtime. Now it is possible to write incremental Lexers in Python 2013-02-01 09:29:43 +00:00
gregoire.detrez
459a9a855b Python binding: add a parsing function that accepts directly a list of tokens.
Is allows to define a tokenizer in python (or use an existing one, from nltk for instance.)
2013-01-24 13:31:34 +00:00
kr.angelov
3be31c62e9 a new reasoner in the C runtime. It supports tabling which makes it decideable for propositional logic. dependent types and high-order types are not supported yet. The generation is still in decreasing probability order 2013-01-07 12:50:32 +00:00
kr.angelov
bb077b8330 bugfix: the linearizer should not generate extra space at the end of the sentence 2012-12-19 11:18:34 +00:00
kr.angelov
f7eaa8a89a bugfix for linearization of metavariables at the root of a tree 2012-12-19 10:03:05 +00:00
kr.angelov
6201640d7b rename linearize.{h/c} to linearizer.{h/c} which follows the convention used in parser.c and reasoner.c 2012-12-19 09:17:24 +00:00
kr.angelov
5c9ee467a9 a major reimplementation of the linearizer in the C runtime 2012-12-19 09:07:05 +00:00
kr.angelov
dc809da91f the C runtime now can read abstract expressions with literals and meta variables 2012-12-18 12:29:30 +00:00
kr.angelov
32905c8363 debugging infrastructure in the reasoner 2012-12-14 21:25:00 +00:00
kr.angelov
5cec2d5a50 bugfix for the reasoner in the C runtime 2012-12-14 21:24:17 +00:00
kr.angelov
8aefd1e072 The first prototype for exhaustive generation in the C runtime. The trees are always listed in decreasing probability order. There is also an API for generation from Python 2012-12-14 15:32:49 +00:00
kr.angelov
e1bab39458 bugfix in the lexer from the C runtime. the input sentence doesn't have to terminate with whitespace 2012-12-13 16:45:44 +00:00
kr.angelov
2ba632dc9f a top-level API for parsing in the C runtime 2012-12-13 14:44:33 +00:00
kr.angelov
60942c440a bugfix: the outside probability of a PgfItemConts must always be initialized to zero 2012-12-13 11:11:45 +00:00
kr.angelov
fe51a7fb98 bugfix: pgf_read_expr no longer requires a semicolon at the end of an abstract expression 2012-12-13 11:09:26 +00:00
kr.angelov
1376df457d started an official API to the C runtime 2012-12-12 11:25:58 +00:00
kr.angelov
3182e382dc bugfix for robust parsing with multi-word units 2012-12-11 12:57:22 +00:00
kr.angelov
1863e4c3d6 added experimental script for chunking in the C runtime 2012-12-03 10:07:54 +00:00
kr.angelov
f8c302f9ef remove the duplicated definition of PgfProductionIdx in parser.c 2012-11-19 14:16:31 +00:00
kr.angelov
71b7c09ffe bugfix for the building of bottom-up filter in the C runtime 2012-11-16 13:27:15 +00:00
kr.angelov
a3ba1991f4 revised heuristic in the statistical parser 2012-11-14 12:34:22 +00:00
kr.angelov
70c68f0527 bugfix in the statistical parser 2012-11-13 09:48:23 +00:00
kr.angelov
08ee662944 two simple heuristics which speed up the statistical parser more than seven times. 2012-11-12 22:17:40 +00:00
kr.angelov
68170d5b08 a simple refactoring in the statistical parser 2012-11-12 21:48:22 +00:00
kr.angelov
a2771552d6 more counters in the profiler for the statistical parser 2012-11-12 15:36:21 +00:00
kr.angelov
46de62c452 now we store the state instead of the offset for every continuation in the chart for the statistical parser 2012-11-12 14:04:52 +00:00
kr.angelov
9967c3ad04 in the statistical parser: move the outside probability from the parse items to their continuation. this makes the value slot shared between many items 2012-11-12 13:43:43 +00:00
kr.angelov
9d23093492 small refactoring in the C runtime 2012-11-12 13:05:35 +00:00
kr.angelov
a50c7c24b8 use size_t consistently as the type for constituent indices in the C runtime 2012-11-12 12:51:27 +00:00
kr.angelov
52255664be use prob_t instead of float in a few places 2012-10-29 08:52:56 +00:00
kr.angelov
0ad2405d69 forgot to add one #ifdef 2012-10-25 18:37:22 +00:00
kr.angelov
9721833680 a major refactoring in the robust parser: bottom-up filtering and garbage collection for the chart 2012-10-25 14:42:53 +00:00
kr.angelov
18fe8af964 now the meta probability for a category is explicitly specified in the statistical model instead of computed internally. this avoids rounding errors while computing the sum of a large number of small values. 2012-09-24 09:37:21 +00:00
kr.angelov
bb15542a85 in the robust parser we don't have to care about trees which yeld empty strings. this makes the parser a lot faster 2012-09-24 09:30:20 +00:00
kr.angelov
44df7a33cf the C runtime now has a type prob_t which is used only for probability values 2012-09-18 09:18:48 +00:00
kr.angelov
cd3cca4aa2 bugfix in the C parser 2012-09-06 14:52:19 +00:00
kr.angelov
3a352a953f Use a separated tag for meta productions in the robust parser. This cleans up the code a lot 2012-06-13 05:49:30 +00:00
kr.angelov
7549a4876d now there is a limit of 2000000 items in the chart of the robust parser. This prevents from explosion in the memory size but it will also prevent us from parsing some sentences. 2012-06-12 11:30:01 +00:00
kr.angelov
b765b0c054 now the robust parser is purely top-down and the meta rules compete on a fair basis with the grammar rules 2012-06-12 09:29:51 +00:00
kr.angelov
cab4602b62 the viterbi probability for the epsilon categories is now updated properly 2012-05-25 07:30:35 +00:00