grammar_cop 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. data/.DS_Store +0 -0
  2. data/.gitignore +4 -0
  3. data/Gemfile +4 -0
  4. data/Rakefile +8 -0
  5. data/data/.DS_Store +0 -0
  6. data/data/Makefile +511 -0
  7. data/data/Makefile.am +4 -0
  8. data/data/Makefile.in +511 -0
  9. data/data/de/.DS_Store +0 -0
  10. data/data/de/4.0.affix +7 -0
  11. data/data/de/4.0.dict +474 -0
  12. data/data/de/Makefile +387 -0
  13. data/data/de/Makefile.am +9 -0
  14. data/data/de/Makefile.in +387 -0
  15. data/data/en/.DS_Store +0 -0
  16. data/data/en/4.0.affix +26 -0
  17. data/data/en/4.0.batch +1002 -0
  18. data/data/en/4.0.biolg.batch +411 -0
  19. data/data/en/4.0.constituent-knowledge +127 -0
  20. data/data/en/4.0.dict +8759 -0
  21. data/data/en/4.0.dict.m4 +6928 -0
  22. data/data/en/4.0.enwiki.batch +14 -0
  23. data/data/en/4.0.fixes.batch +2776 -0
  24. data/data/en/4.0.knowledge +306 -0
  25. data/data/en/4.0.regex +225 -0
  26. data/data/en/4.0.voa.batch +114 -0
  27. data/data/en/Makefile +554 -0
  28. data/data/en/Makefile.am +19 -0
  29. data/data/en/Makefile.in +554 -0
  30. data/data/en/README +173 -0
  31. data/data/en/tiny.dict +157 -0
  32. data/data/en/words/.DS_Store +0 -0
  33. data/data/en/words/Makefile +456 -0
  34. data/data/en/words/Makefile.am +78 -0
  35. data/data/en/words/Makefile.in +456 -0
  36. data/data/en/words/currency +205 -0
  37. data/data/en/words/currency.p +28 -0
  38. data/data/en/words/entities.given-bisex.sing +39 -0
  39. data/data/en/words/entities.given-female.sing +4141 -0
  40. data/data/en/words/entities.given-male.sing +1633 -0
  41. data/data/en/words/entities.locations.sing +68 -0
  42. data/data/en/words/entities.national.sing +253 -0
  43. data/data/en/words/entities.organizations.sing +7 -0
  44. data/data/en/words/entities.us-states.sing +11 -0
  45. data/data/en/words/units.1 +45 -0
  46. data/data/en/words/units.1.dot +4 -0
  47. data/data/en/words/units.3 +2 -0
  48. data/data/en/words/units.4 +5 -0
  49. data/data/en/words/units.4.dot +1 -0
  50. data/data/en/words/words-medical.adv.1 +1191 -0
  51. data/data/en/words/words-medical.prep.1 +67 -0
  52. data/data/en/words/words-medical.v.4.1 +2835 -0
  53. data/data/en/words/words-medical.v.4.2 +2848 -0
  54. data/data/en/words/words-medical.v.4.3 +3011 -0
  55. data/data/en/words/words-medical.v.4.4 +3036 -0
  56. data/data/en/words/words-medical.v.4.5 +3050 -0
  57. data/data/en/words/words.adj.1 +6794 -0
  58. data/data/en/words/words.adj.2 +638 -0
  59. data/data/en/words/words.adj.3 +667 -0
  60. data/data/en/words/words.adv.1 +1573 -0
  61. data/data/en/words/words.adv.2 +67 -0
  62. data/data/en/words/words.adv.3 +157 -0
  63. data/data/en/words/words.adv.4 +80 -0
  64. data/data/en/words/words.n.1 +11464 -0
  65. data/data/en/words/words.n.1.wiki +264 -0
  66. data/data/en/words/words.n.2.s +2017 -0
  67. data/data/en/words/words.n.2.s.biolg +1 -0
  68. data/data/en/words/words.n.2.s.wiki +298 -0
  69. data/data/en/words/words.n.2.x +65 -0
  70. data/data/en/words/words.n.2.x.wiki +10 -0
  71. data/data/en/words/words.n.3 +5717 -0
  72. data/data/en/words/words.n.t +23 -0
  73. data/data/en/words/words.v.1.1 +1038 -0
  74. data/data/en/words/words.v.1.2 +1043 -0
  75. data/data/en/words/words.v.1.3 +1052 -0
  76. data/data/en/words/words.v.1.4 +1023 -0
  77. data/data/en/words/words.v.1.p +17 -0
  78. data/data/en/words/words.v.10.1 +14 -0
  79. data/data/en/words/words.v.10.2 +15 -0
  80. data/data/en/words/words.v.10.3 +88 -0
  81. data/data/en/words/words.v.10.4 +17 -0
  82. data/data/en/words/words.v.2.1 +1253 -0
  83. data/data/en/words/words.v.2.2 +1304 -0
  84. data/data/en/words/words.v.2.3 +1280 -0
  85. data/data/en/words/words.v.2.4 +1285 -0
  86. data/data/en/words/words.v.2.5 +1287 -0
  87. data/data/en/words/words.v.4.1 +2472 -0
  88. data/data/en/words/words.v.4.2 +2487 -0
  89. data/data/en/words/words.v.4.3 +2441 -0
  90. data/data/en/words/words.v.4.4 +2478 -0
  91. data/data/en/words/words.v.4.5 +2483 -0
  92. data/data/en/words/words.v.5.1 +98 -0
  93. data/data/en/words/words.v.5.2 +98 -0
  94. data/data/en/words/words.v.5.3 +103 -0
  95. data/data/en/words/words.v.5.4 +102 -0
  96. data/data/en/words/words.v.6.1 +388 -0
  97. data/data/en/words/words.v.6.2 +401 -0
  98. data/data/en/words/words.v.6.3 +397 -0
  99. data/data/en/words/words.v.6.4 +405 -0
  100. data/data/en/words/words.v.6.5 +401 -0
  101. data/data/en/words/words.v.8.1 +117 -0
  102. data/data/en/words/words.v.8.2 +118 -0
  103. data/data/en/words/words.v.8.3 +118 -0
  104. data/data/en/words/words.v.8.4 +119 -0
  105. data/data/en/words/words.v.8.5 +119 -0
  106. data/data/en/words/words.y +104 -0
  107. data/data/lt/.DS_Store +0 -0
  108. data/data/lt/4.0.affix +6 -0
  109. data/data/lt/4.0.constituent-knowledge +24 -0
  110. data/data/lt/4.0.dict +135 -0
  111. data/data/lt/4.0.knowledge +38 -0
  112. data/data/lt/Makefile +389 -0
  113. data/data/lt/Makefile.am +11 -0
  114. data/data/lt/Makefile.in +389 -0
  115. data/ext/.DS_Store +0 -0
  116. data/ext/link_grammar/.DS_Store +0 -0
  117. data/ext/link_grammar/extconf.rb +2 -0
  118. data/ext/link_grammar/link-grammar/.DS_Store +0 -0
  119. data/ext/link_grammar/link-grammar/.deps/analyze-linkage.Plo +198 -0
  120. data/ext/link_grammar/link-grammar/.deps/and.Plo +202 -0
  121. data/ext/link_grammar/link-grammar/.deps/api.Plo +244 -0
  122. data/ext/link_grammar/link-grammar/.deps/build-disjuncts.Plo +212 -0
  123. data/ext/link_grammar/link-grammar/.deps/command-line.Plo +201 -0
  124. data/ext/link_grammar/link-grammar/.deps/constituents.Plo +201 -0
  125. data/ext/link_grammar/link-grammar/.deps/count.Plo +202 -0
  126. data/ext/link_grammar/link-grammar/.deps/disjunct-utils.Plo +126 -0
  127. data/ext/link_grammar/link-grammar/.deps/disjuncts.Plo +123 -0
  128. data/ext/link_grammar/link-grammar/.deps/error.Plo +121 -0
  129. data/ext/link_grammar/link-grammar/.deps/expand.Plo +133 -0
  130. data/ext/link_grammar/link-grammar/.deps/extract-links.Plo +198 -0
  131. data/ext/link_grammar/link-grammar/.deps/fast-match.Plo +200 -0
  132. data/ext/link_grammar/link-grammar/.deps/idiom.Plo +200 -0
  133. data/ext/link_grammar/link-grammar/.deps/jni-client.Plo +217 -0
  134. data/ext/link_grammar/link-grammar/.deps/link-parser.Po +1 -0
  135. data/ext/link_grammar/link-grammar/.deps/massage.Plo +202 -0
  136. data/ext/link_grammar/link-grammar/.deps/post-process.Plo +202 -0
  137. data/ext/link_grammar/link-grammar/.deps/pp_knowledge.Plo +202 -0
  138. data/ext/link_grammar/link-grammar/.deps/pp_lexer.Plo +201 -0
  139. data/ext/link_grammar/link-grammar/.deps/pp_linkset.Plo +200 -0
  140. data/ext/link_grammar/link-grammar/.deps/prefix.Plo +102 -0
  141. data/ext/link_grammar/link-grammar/.deps/preparation.Plo +202 -0
  142. data/ext/link_grammar/link-grammar/.deps/print-util.Plo +200 -0
  143. data/ext/link_grammar/link-grammar/.deps/print.Plo +201 -0
  144. data/ext/link_grammar/link-grammar/.deps/prune.Plo +202 -0
  145. data/ext/link_grammar/link-grammar/.deps/read-dict.Plo +223 -0
  146. data/ext/link_grammar/link-grammar/.deps/read-regex.Plo +123 -0
  147. data/ext/link_grammar/link-grammar/.deps/regex-morph.Plo +131 -0
  148. data/ext/link_grammar/link-grammar/.deps/resources.Plo +203 -0
  149. data/ext/link_grammar/link-grammar/.deps/spellcheck-aspell.Plo +1 -0
  150. data/ext/link_grammar/link-grammar/.deps/spellcheck-hun.Plo +115 -0
  151. data/ext/link_grammar/link-grammar/.deps/string-set.Plo +198 -0
  152. data/ext/link_grammar/link-grammar/.deps/tokenize.Plo +160 -0
  153. data/ext/link_grammar/link-grammar/.deps/utilities.Plo +222 -0
  154. data/ext/link_grammar/link-grammar/.deps/word-file.Plo +201 -0
  155. data/ext/link_grammar/link-grammar/.deps/word-utils.Plo +212 -0
  156. data/ext/link_grammar/link-grammar/.libs/analyze-linkage.o +0 -0
  157. data/ext/link_grammar/link-grammar/.libs/and.o +0 -0
  158. data/ext/link_grammar/link-grammar/.libs/api.o +0 -0
  159. data/ext/link_grammar/link-grammar/.libs/build-disjuncts.o +0 -0
  160. data/ext/link_grammar/link-grammar/.libs/command-line.o +0 -0
  161. data/ext/link_grammar/link-grammar/.libs/constituents.o +0 -0
  162. data/ext/link_grammar/link-grammar/.libs/count.o +0 -0
  163. data/ext/link_grammar/link-grammar/.libs/disjunct-utils.o +0 -0
  164. data/ext/link_grammar/link-grammar/.libs/disjuncts.o +0 -0
  165. data/ext/link_grammar/link-grammar/.libs/error.o +0 -0
  166. data/ext/link_grammar/link-grammar/.libs/expand.o +0 -0
  167. data/ext/link_grammar/link-grammar/.libs/extract-links.o +0 -0
  168. data/ext/link_grammar/link-grammar/.libs/fast-match.o +0 -0
  169. data/ext/link_grammar/link-grammar/.libs/idiom.o +0 -0
  170. data/ext/link_grammar/link-grammar/.libs/jni-client.o +0 -0
  171. data/ext/link_grammar/link-grammar/.libs/liblink-grammar-java-symbols.expsym +31 -0
  172. data/ext/link_grammar/link-grammar/.libs/liblink-grammar-java.4.dylib +0 -0
  173. data/ext/link_grammar/link-grammar/.libs/liblink-grammar-java.4.dylib.dSYM/Contents/Info.plist +20 -0
  174. data/ext/link_grammar/link-grammar/.libs/liblink-grammar-java.4.dylib.dSYM/Contents/Resources/DWARF/liblink-grammar-java.4.dylib +0 -0
  175. data/ext/link_grammar/link-grammar/.libs/liblink-grammar-java.a +0 -0
  176. data/ext/link_grammar/link-grammar/.libs/liblink-grammar-java.dylib +0 -0
  177. data/ext/link_grammar/link-grammar/.libs/liblink-grammar-symbols.expsym +194 -0
  178. data/ext/link_grammar/link-grammar/.libs/liblink-grammar.4.dylib +0 -0
  179. data/ext/link_grammar/link-grammar/.libs/liblink-grammar.4.dylib.dSYM/Contents/Info.plist +20 -0
  180. data/ext/link_grammar/link-grammar/.libs/liblink-grammar.4.dylib.dSYM/Contents/Resources/DWARF/liblink-grammar.4.dylib +0 -0
  181. data/ext/link_grammar/link-grammar/.libs/liblink-grammar.a +0 -0
  182. data/ext/link_grammar/link-grammar/.libs/liblink-grammar.dylib +0 -0
  183. data/ext/link_grammar/link-grammar/.libs/liblink-grammar.la +41 -0
  184. data/ext/link_grammar/link-grammar/.libs/liblink-grammar.lai +41 -0
  185. data/ext/link_grammar/link-grammar/.libs/massage.o +0 -0
  186. data/ext/link_grammar/link-grammar/.libs/post-process.o +0 -0
  187. data/ext/link_grammar/link-grammar/.libs/pp_knowledge.o +0 -0
  188. data/ext/link_grammar/link-grammar/.libs/pp_lexer.o +0 -0
  189. data/ext/link_grammar/link-grammar/.libs/pp_linkset.o +0 -0
  190. data/ext/link_grammar/link-grammar/.libs/prefix.o +0 -0
  191. data/ext/link_grammar/link-grammar/.libs/preparation.o +0 -0
  192. data/ext/link_grammar/link-grammar/.libs/print-util.o +0 -0
  193. data/ext/link_grammar/link-grammar/.libs/print.o +0 -0
  194. data/ext/link_grammar/link-grammar/.libs/prune.o +0 -0
  195. data/ext/link_grammar/link-grammar/.libs/read-dict.o +0 -0
  196. data/ext/link_grammar/link-grammar/.libs/read-regex.o +0 -0
  197. data/ext/link_grammar/link-grammar/.libs/regex-morph.o +0 -0
  198. data/ext/link_grammar/link-grammar/.libs/resources.o +0 -0
  199. data/ext/link_grammar/link-grammar/.libs/spellcheck-aspell.o +0 -0
  200. data/ext/link_grammar/link-grammar/.libs/spellcheck-hun.o +0 -0
  201. data/ext/link_grammar/link-grammar/.libs/string-set.o +0 -0
  202. data/ext/link_grammar/link-grammar/.libs/tokenize.o +0 -0
  203. data/ext/link_grammar/link-grammar/.libs/utilities.o +0 -0
  204. data/ext/link_grammar/link-grammar/.libs/word-file.o +0 -0
  205. data/ext/link_grammar/link-grammar/.libs/word-utils.o +0 -0
  206. data/ext/link_grammar/link-grammar/Makefile +900 -0
  207. data/ext/link_grammar/link-grammar/Makefile.am +202 -0
  208. data/ext/link_grammar/link-grammar/Makefile.in +900 -0
  209. data/ext/link_grammar/link-grammar/analyze-linkage.c +1317 -0
  210. data/ext/link_grammar/link-grammar/analyze-linkage.h +24 -0
  211. data/ext/link_grammar/link-grammar/and.c +1603 -0
  212. data/ext/link_grammar/link-grammar/and.h +27 -0
  213. data/ext/link_grammar/link-grammar/api-structures.h +362 -0
  214. data/ext/link_grammar/link-grammar/api-types.h +72 -0
  215. data/ext/link_grammar/link-grammar/api.c +1887 -0
  216. data/ext/link_grammar/link-grammar/api.h +96 -0
  217. data/ext/link_grammar/link-grammar/autoit/.DS_Store +0 -0
  218. data/ext/link_grammar/link-grammar/autoit/README +10 -0
  219. data/ext/link_grammar/link-grammar/autoit/_LGTest.au3 +22 -0
  220. data/ext/link_grammar/link-grammar/autoit/_LinkGrammar.au3 +545 -0
  221. data/ext/link_grammar/link-grammar/build-disjuncts.c +487 -0
  222. data/ext/link_grammar/link-grammar/build-disjuncts.h +21 -0
  223. data/ext/link_grammar/link-grammar/command-line.c +458 -0
  224. data/ext/link_grammar/link-grammar/command-line.h +15 -0
  225. data/ext/link_grammar/link-grammar/constituents.c +1836 -0
  226. data/ext/link_grammar/link-grammar/constituents.h +26 -0
  227. data/ext/link_grammar/link-grammar/corpus/.DS_Store +0 -0
  228. data/ext/link_grammar/link-grammar/corpus/.deps/cluster.Plo +1 -0
  229. data/ext/link_grammar/link-grammar/corpus/.deps/corpus.Plo +1 -0
  230. data/ext/link_grammar/link-grammar/corpus/Makefile +527 -0
  231. data/ext/link_grammar/link-grammar/corpus/Makefile.am +46 -0
  232. data/ext/link_grammar/link-grammar/corpus/Makefile.in +527 -0
  233. data/ext/link_grammar/link-grammar/corpus/README +17 -0
  234. data/ext/link_grammar/link-grammar/corpus/cluster.c +286 -0
  235. data/ext/link_grammar/link-grammar/corpus/cluster.h +32 -0
  236. data/ext/link_grammar/link-grammar/corpus/corpus.c +483 -0
  237. data/ext/link_grammar/link-grammar/corpus/corpus.h +46 -0
  238. data/ext/link_grammar/link-grammar/count.c +828 -0
  239. data/ext/link_grammar/link-grammar/count.h +25 -0
  240. data/ext/link_grammar/link-grammar/disjunct-utils.c +261 -0
  241. data/ext/link_grammar/link-grammar/disjunct-utils.h +27 -0
  242. data/ext/link_grammar/link-grammar/disjuncts.c +138 -0
  243. data/ext/link_grammar/link-grammar/disjuncts.h +13 -0
  244. data/ext/link_grammar/link-grammar/error.c +92 -0
  245. data/ext/link_grammar/link-grammar/error.h +35 -0
  246. data/ext/link_grammar/link-grammar/expand.c +67 -0
  247. data/ext/link_grammar/link-grammar/expand.h +13 -0
  248. data/ext/link_grammar/link-grammar/externs.h +22 -0
  249. data/ext/link_grammar/link-grammar/extract-links.c +625 -0
  250. data/ext/link_grammar/link-grammar/extract-links.h +16 -0
  251. data/ext/link_grammar/link-grammar/fast-match.c +309 -0
  252. data/ext/link_grammar/link-grammar/fast-match.h +17 -0
  253. data/ext/link_grammar/link-grammar/idiom.c +373 -0
  254. data/ext/link_grammar/link-grammar/idiom.h +15 -0
  255. data/ext/link_grammar/link-grammar/jni-client.c +779 -0
  256. data/ext/link_grammar/link-grammar/jni-client.h +236 -0
  257. data/ext/link_grammar/link-grammar/liblink-grammar-java.la +42 -0
  258. data/ext/link_grammar/link-grammar/liblink-grammar.la +41 -0
  259. data/ext/link_grammar/link-grammar/link-features.h +37 -0
  260. data/ext/link_grammar/link-grammar/link-features.h.in +37 -0
  261. data/ext/link_grammar/link-grammar/link-grammar-java.def +31 -0
  262. data/ext/link_grammar/link-grammar/link-grammar.def +194 -0
  263. data/ext/link_grammar/link-grammar/link-includes.h +465 -0
  264. data/ext/link_grammar/link-grammar/link-parser.c +849 -0
  265. data/ext/link_grammar/link-grammar/massage.c +329 -0
  266. data/ext/link_grammar/link-grammar/massage.h +13 -0
  267. data/ext/link_grammar/link-grammar/post-process.c +1113 -0
  268. data/ext/link_grammar/link-grammar/post-process.h +45 -0
  269. data/ext/link_grammar/link-grammar/pp_knowledge.c +376 -0
  270. data/ext/link_grammar/link-grammar/pp_knowledge.h +14 -0
  271. data/ext/link_grammar/link-grammar/pp_lexer.c +1920 -0
  272. data/ext/link_grammar/link-grammar/pp_lexer.h +19 -0
  273. data/ext/link_grammar/link-grammar/pp_linkset.c +158 -0
  274. data/ext/link_grammar/link-grammar/pp_linkset.h +20 -0
  275. data/ext/link_grammar/link-grammar/prefix.c +482 -0
  276. data/ext/link_grammar/link-grammar/prefix.h +139 -0
  277. data/ext/link_grammar/link-grammar/preparation.c +412 -0
  278. data/ext/link_grammar/link-grammar/preparation.h +20 -0
  279. data/ext/link_grammar/link-grammar/print-util.c +87 -0
  280. data/ext/link_grammar/link-grammar/print-util.h +32 -0
  281. data/ext/link_grammar/link-grammar/print.c +1085 -0
  282. data/ext/link_grammar/link-grammar/print.h +16 -0
  283. data/ext/link_grammar/link-grammar/prune.c +1864 -0
  284. data/ext/link_grammar/link-grammar/prune.h +17 -0
  285. data/ext/link_grammar/link-grammar/read-dict.c +1785 -0
  286. data/ext/link_grammar/link-grammar/read-dict.h +29 -0
  287. data/ext/link_grammar/link-grammar/read-regex.c +161 -0
  288. data/ext/link_grammar/link-grammar/read-regex.h +12 -0
  289. data/ext/link_grammar/link-grammar/regex-morph.c +126 -0
  290. data/ext/link_grammar/link-grammar/regex-morph.h +17 -0
  291. data/ext/link_grammar/link-grammar/resources.c +180 -0
  292. data/ext/link_grammar/link-grammar/resources.h +23 -0
  293. data/ext/link_grammar/link-grammar/sat-solver/.DS_Store +0 -0
  294. data/ext/link_grammar/link-grammar/sat-solver/.deps/fast-sprintf.Plo +1 -0
  295. data/ext/link_grammar/link-grammar/sat-solver/.deps/sat-encoder.Plo +1 -0
  296. data/ext/link_grammar/link-grammar/sat-solver/.deps/util.Plo +1 -0
  297. data/ext/link_grammar/link-grammar/sat-solver/.deps/variables.Plo +1 -0
  298. data/ext/link_grammar/link-grammar/sat-solver/.deps/word-tag.Plo +1 -0
  299. data/ext/link_grammar/link-grammar/sat-solver/Makefile +527 -0
  300. data/ext/link_grammar/link-grammar/sat-solver/Makefile.am +29 -0
  301. data/ext/link_grammar/link-grammar/sat-solver/Makefile.in +527 -0
  302. data/ext/link_grammar/link-grammar/sat-solver/clock.hpp +33 -0
  303. data/ext/link_grammar/link-grammar/sat-solver/fast-sprintf.cpp +26 -0
  304. data/ext/link_grammar/link-grammar/sat-solver/fast-sprintf.hpp +7 -0
  305. data/ext/link_grammar/link-grammar/sat-solver/guiding.hpp +244 -0
  306. data/ext/link_grammar/link-grammar/sat-solver/matrix-ut.hpp +79 -0
  307. data/ext/link_grammar/link-grammar/sat-solver/sat-encoder.cpp +2811 -0
  308. data/ext/link_grammar/link-grammar/sat-solver/sat-encoder.h +11 -0
  309. data/ext/link_grammar/link-grammar/sat-solver/sat-encoder.hpp +381 -0
  310. data/ext/link_grammar/link-grammar/sat-solver/trie.hpp +118 -0
  311. data/ext/link_grammar/link-grammar/sat-solver/util.cpp +23 -0
  312. data/ext/link_grammar/link-grammar/sat-solver/util.hpp +14 -0
  313. data/ext/link_grammar/link-grammar/sat-solver/variables.cpp +5 -0
  314. data/ext/link_grammar/link-grammar/sat-solver/variables.hpp +829 -0
  315. data/ext/link_grammar/link-grammar/sat-solver/word-tag.cpp +159 -0
  316. data/ext/link_grammar/link-grammar/sat-solver/word-tag.hpp +162 -0
  317. data/ext/link_grammar/link-grammar/spellcheck-aspell.c +148 -0
  318. data/ext/link_grammar/link-grammar/spellcheck-hun.c +136 -0
  319. data/ext/link_grammar/link-grammar/spellcheck.h +34 -0
  320. data/ext/link_grammar/link-grammar/string-set.c +169 -0
  321. data/ext/link_grammar/link-grammar/string-set.h +16 -0
  322. data/ext/link_grammar/link-grammar/structures.h +498 -0
  323. data/ext/link_grammar/link-grammar/tokenize.c +1049 -0
  324. data/ext/link_grammar/link-grammar/tokenize.h +15 -0
  325. data/ext/link_grammar/link-grammar/utilities.c +847 -0
  326. data/ext/link_grammar/link-grammar/utilities.h +281 -0
  327. data/ext/link_grammar/link-grammar/word-file.c +124 -0
  328. data/ext/link_grammar/link-grammar/word-file.h +15 -0
  329. data/ext/link_grammar/link-grammar/word-utils.c +526 -0
  330. data/ext/link_grammar/link-grammar/word-utils.h +152 -0
  331. data/ext/link_grammar/link_grammar.c +202 -0
  332. data/ext/link_grammar/link_grammar.h +99 -0
  333. data/grammar_cop.gemspec +24 -0
  334. data/lib/.DS_Store +0 -0
  335. data/lib/grammar_cop.rb +9 -0
  336. data/lib/grammar_cop/.DS_Store +0 -0
  337. data/lib/grammar_cop/dictionary.rb +19 -0
  338. data/lib/grammar_cop/linkage.rb +30 -0
  339. data/lib/grammar_cop/parse_options.rb +32 -0
  340. data/lib/grammar_cop/sentence.rb +36 -0
  341. data/lib/grammar_cop/version.rb +3 -0
  342. data/test/.DS_Store +0 -0
  343. data/test/grammar_cop_test.rb +27 -0
  344. metadata +407 -0
@@ -0,0 +1,465 @@
1
+ /*************************************************************************/
2
+ /* Copyright (c) 2004 */
3
+ /* Daniel Sleator, David Temperley, and John Lafferty */
4
+ /* All rights reserved */
5
+ /* */
6
+ /* Use of the link grammar parsing system is subject to the terms of the */
7
+ /* license set forth in the LICENSE file included with this software, */
8
+ /* and also available at http://www.link.cs.cmu.edu/link/license.html */
9
+ /* This license allows free redistribution and use in source and binary */
10
+ /* forms, with or without modification, subject to certain conditions. */
11
+ /* */
12
+ /*************************************************************************/
13
+ #ifndef _LINKINCLUDESH_
14
+ #define _LINKINCLUDESH_
15
+
16
+ //#include <link-grammar/link-features.h>
17
+ #include "link-features.h"
18
+
19
+ LINK_BEGIN_DECLS
20
+
21
+ /**********************************************************************
22
+ *
23
+ * System initialization
24
+ *
25
+ ***********************************************************************/
26
+
27
+ typedef struct Dictionary_s * Dictionary;
28
+
29
+ link_public_api(const char *)
30
+ linkgrammar_get_version(void);
31
+
32
+ link_public_api(const char *)
33
+ linkgrammar_get_dict_version(Dictionary);
34
+
35
+ /**********************************************************************
36
+ *
37
+ * Functions to manipulate Dictionaries
38
+ *
39
+ ***********************************************************************/
40
+
41
+ link_public_api(Dictionary)
42
+ dictionary_create(const char * dict_name,
43
+ const char * pp_name,
44
+ const char * cons_name,
45
+ const char * affix_name);
46
+ link_public_api(Dictionary)
47
+ dictionary_create_lang(const char * lang);
48
+ link_public_api(Dictionary)
49
+ dictionary_create_default_lang(void);
50
+
51
+ link_public_api(int)
52
+ dictionary_delete(Dictionary dict);
53
+ link_public_api(int)
54
+ dictionary_get_max_cost(Dictionary dict);
55
+
56
+ link_public_api(void)
57
+ dictionary_set_data_dir(const char * path);
58
+ link_public_api(char *)
59
+ dictionary_get_data_dir(void);
60
+
61
+ link_public_api(int)
62
+ dictionary_is_past_tense_form(Dictionary dict, const char * str);
63
+ link_public_api(int)
64
+ dictionary_is_entity(Dictionary dict, const char * str);
65
+
66
+ /**********************************************************************
67
+ *
68
+ * Functions to manipulate Parse Options
69
+ *
70
+ ***********************************************************************/
71
+
72
+ typedef struct Parse_Options_s * Parse_Options;
73
+
74
+ link_public_api(Parse_Options)
75
+ parse_options_create(void);
76
+ link_public_api(int)
77
+ parse_options_delete(Parse_Options opts);
78
+ link_public_api(void)
79
+ parse_options_set_verbosity(Parse_Options opts, int verbosity);
80
+ link_public_api(int)
81
+ parse_options_get_verbosity(Parse_Options opts);
82
+ link_public_api(void)
83
+ parse_options_set_linkage_limit(Parse_Options opts, int linkage_limit);
84
+ link_public_api(int)
85
+ parse_options_get_linkage_limit(Parse_Options opts);
86
+ link_public_api(void)
87
+ parse_options_set_disjunct_cost(Parse_Options opts, int disjunct_cost);
88
+ link_public_api(void)
89
+ parse_options_set_disjunct_costf(Parse_Options opts, float disjunct_cost);
90
+ link_public_api(int)
91
+ parse_options_get_disjunct_cost(Parse_Options opts);
92
+ link_public_api(float)
93
+ parse_options_get_disjunct_costf(Parse_Options opts);
94
+ link_public_api(void)
95
+ parse_options_set_min_null_count(Parse_Options opts, int null_count);
96
+ link_public_api(int)
97
+ parse_options_get_min_null_count(Parse_Options opts);
98
+ link_public_api(void)
99
+ parse_options_set_max_null_count(Parse_Options opts, int null_count);
100
+ link_public_api(int)
101
+ parse_options_get_max_null_count(Parse_Options opts);
102
+ link_public_api(void)
103
+ parse_options_set_null_block(Parse_Options opts, int null_block);
104
+ link_public_api(int)
105
+ parse_options_get_null_block(Parse_Options opts);
106
+ link_public_api(void)
107
+ parse_options_set_islands_ok(Parse_Options opts, int islands_ok);
108
+ link_public_api(int)
109
+ parse_options_get_islands_ok(Parse_Options opts);
110
+ link_public_api(void)
111
+ parse_options_set_spell_guess(Parse_Options opts, int spell_guess);
112
+ link_public_api(int)
113
+ parse_options_get_spell_guess(Parse_Options opts);
114
+ link_public_api(void)
115
+ parse_options_set_short_length(Parse_Options opts, int short_length);
116
+ link_public_api(int)
117
+ parse_options_get_short_length(Parse_Options opts);
118
+ link_public_api(void)
119
+ parse_options_set_max_memory(Parse_Options opts, int mem);
120
+ link_public_api(int)
121
+ parse_options_get_max_memory(Parse_Options opts);
122
+ link_public_api(void)
123
+ parse_options_set_max_sentence_length(Parse_Options opts, int len);
124
+ link_public_api(int)
125
+ parse_options_get_max_sentence_length(Parse_Options opts);
126
+ link_public_api(void)
127
+ parse_options_set_max_parse_time(Parse_Options opts, int secs);
128
+ link_public_api(int)
129
+ parse_options_get_max_parse_time(Parse_Options opts);
130
+ link_public_api(void)
131
+ parse_options_set_cost_model_type(Parse_Options opts, int cm);
132
+ link_public_api(int)
133
+ parse_options_get_cost_model_type(Parse_Options opts);
134
+ link_public_api(void)
135
+ parse_options_set_use_fat_links(Parse_Options opts, int use_fat_links);
136
+ link_public_api(int)
137
+ parse_options_get_use_fat_links(Parse_Options opts);
138
+ link_public_api(void)
139
+ parse_options_set_use_sat_parser(Parse_Options opts, int use_sat_solver);
140
+ link_public_api(int)
141
+ parse_options_get_use_sat_parser(Parse_Options opts);
142
+ link_public_api(int)
143
+ parse_options_timer_expired(Parse_Options opts);
144
+ link_public_api(int)
145
+ parse_options_memory_exhausted(Parse_Options opts);
146
+ link_public_api(int)
147
+ parse_options_resources_exhausted(Parse_Options opts);
148
+ link_public_api(void)
149
+ parse_options_set_screen_width(Parse_Options opts, int val);
150
+ link_public_api(int)
151
+ parse_options_get_screen_width(Parse_Options opts);
152
+ link_public_api(void)
153
+ parse_options_set_allow_null(Parse_Options opts, int val);
154
+ link_public_api(int)
155
+ parse_options_get_allow_null(Parse_Options opts);
156
+ link_public_api(void)
157
+ parse_options_set_use_cluster_disjuncts(Parse_Options opts, int val);
158
+ link_public_api(int)
159
+ parse_options_get_use_cluster_disjuncts(Parse_Options opts);
160
+ link_public_api(void)
161
+ parse_options_set_display_walls(Parse_Options opts, int val);
162
+ link_public_api(int)
163
+ parse_options_get_display_walls(Parse_Options opts);
164
+ link_public_api(void)
165
+ parse_options_set_all_short_connectors(Parse_Options opts, int val);
166
+ link_public_api(int)
167
+ parse_options_get_all_short_connectors(Parse_Options opts);
168
+ link_public_api(void)
169
+ parse_options_reset_resources(Parse_Options opts);
170
+
171
+
172
+ /**********************************************************************
173
+ *
174
+ * The following Parse_Options functions do not directly affect the
175
+ * operation of the parser, but they can be useful for organizing the
176
+ * search, or displaying the results. They were included as switches for
177
+ * convenience in implementing the "standard" version of the link parser
178
+ * using the API.
179
+ *
180
+ ***********************************************************************/
181
+
182
+ link_public_api(void)
183
+ parse_options_set_batch_mode(Parse_Options opts, int val);
184
+ link_public_api(int)
185
+ parse_options_get_batch_mode(Parse_Options opts);
186
+ link_public_api(void)
187
+ parse_options_set_panic_mode(Parse_Options opts, int val);
188
+ link_public_api(int)
189
+ parse_options_get_panic_mode(Parse_Options opts);
190
+ link_public_api(void)
191
+ parse_options_set_display_on(Parse_Options opts, int val);
192
+ link_public_api(int)
193
+ parse_options_get_display_on(Parse_Options opts);
194
+ link_public_api(void)
195
+ parse_options_set_display_postscript(Parse_Options opts, int val);
196
+ link_public_api(int)
197
+ parse_options_get_display_postscript(Parse_Options opts);
198
+ link_public_api(void)
199
+ parse_options_set_display_constituents(Parse_Options opts, int val);
200
+ link_public_api(int)
201
+ parse_options_get_display_constituents(Parse_Options opts);
202
+ link_public_api(void)
203
+ parse_options_set_display_bad(Parse_Options opts, int val);
204
+ link_public_api(int)
205
+ parse_options_get_display_bad(Parse_Options opts);
206
+ link_public_api(void)
207
+ parse_options_set_display_disjuncts(Parse_Options opts, int val);
208
+ link_public_api(int)
209
+ parse_options_get_display_disjuncts(Parse_Options opts);
210
+ link_public_api(void)
211
+ parse_options_set_display_links(Parse_Options opts, int val);
212
+ link_public_api(int)
213
+ parse_options_get_display_links(Parse_Options opts);
214
+ link_public_api(void)
215
+ parse_options_set_display_senses(Parse_Options opts, int val);
216
+ link_public_api(int)
217
+ parse_options_get_display_senses(Parse_Options opts);
218
+ link_public_api(void)
219
+ parse_options_set_display_union(Parse_Options opts, int val);
220
+ link_public_api(int)
221
+ parse_options_get_display_union(Parse_Options opts);
222
+ link_public_api(void)
223
+ parse_options_set_echo_on(Parse_Options opts, int val);
224
+ link_public_api(int)
225
+ parse_options_get_echo_on(Parse_Options opts);
226
+
227
+ /**********************************************************************
228
+ *
229
+ * Functions to manipulate Sentences
230
+ *
231
+ ***********************************************************************/
232
+
233
+ typedef struct Sentence_s * Sentence;
234
+
235
+ link_public_api(Sentence)
236
+ sentence_create(const char *input_string, Dictionary dict);
237
+ link_public_api(void)
238
+ sentence_delete(Sentence sent);
239
+ link_public_api(int)
240
+ sentence_split(Sentence sent, Parse_Options opts);
241
+ link_public_api(int)
242
+ sentence_parse(Sentence sent, Parse_Options opts);
243
+ link_public_api(int)
244
+ sentence_length(Sentence sent);
245
+ link_public_api(const char *)
246
+ sentence_get_word(Sentence sent, int wordnum);
247
+ link_public_api(int)
248
+ sentence_null_count(Sentence sent);
249
+ link_public_api(int)
250
+ sentence_num_linkages_found(Sentence sent);
251
+ link_public_api(int)
252
+ sentence_num_valid_linkages(Sentence sent);
253
+ link_public_api(int)
254
+ sentence_num_linkages_post_processed(Sentence sent);
255
+ link_public_api(int)
256
+ sentence_num_thin_linkages(Sentence sent);
257
+ link_public_api(int)
258
+ sentence_num_violations(Sentence sent, int i);
259
+ link_public_api(int)
260
+ sentence_and_cost(Sentence sent, int i);
261
+ link_public_api(int)
262
+ sentence_disjunct_cost(Sentence sent, int i);
263
+ link_public_api(int)
264
+ sentence_link_cost(Sentence sent, int i);
265
+
266
+ link_public_api(int)
267
+ sentence_contains_conjunction(Sentence sent);
268
+
269
+ /**********************************************************************
270
+ *
271
+ * Functions that create and manipulate Linkages.
272
+ * When a Linkage is requested, the user is given a
273
+ * copy of all of the necessary information, and is responsible
274
+ * for freeing up the storage when he/she is finished, using
275
+ * the routines provided below.
276
+ *
277
+ ***********************************************************************/
278
+
279
+ typedef struct Linkage_s * Linkage;
280
+
281
+ link_public_api(Linkage)
282
+ linkage_create(int index, Sentence sent, Parse_Options opts);
283
+ link_public_api(int)
284
+ linkage_get_current_sublinkage(Linkage linkage);
285
+ link_public_api(int)
286
+ linkage_set_current_sublinkage(Linkage linkage, int index);
287
+ link_public_api(void)
288
+ linkage_delete(Linkage linkage);
289
+ link_public_api(Sentence)
290
+ linkage_get_sentence(Linkage linkage);
291
+ link_public_api(int)
292
+ linkage_get_num_sublinkages(Linkage linkage);
293
+ link_public_api(int)
294
+ linkage_get_num_words(Linkage linkage);
295
+ link_public_api(int)
296
+ linkage_get_num_links(Linkage linkage);
297
+ link_public_api(int)
298
+ linkage_get_link_lword(Linkage linkage, int index);
299
+ link_public_api(int)
300
+ linkage_get_link_rword(Linkage linkage, int index);
301
+ link_public_api(int)
302
+ linkage_get_link_length(Linkage linkage, int index);
303
+ link_public_api(const char *)
304
+ linkage_get_link_label(Linkage linkage, int index);
305
+ link_public_api(const char *)
306
+ linkage_get_link_llabel(Linkage linkage, int index);
307
+ link_public_api(const char *)
308
+ linkage_get_link_rlabel(Linkage linkage, int index);
309
+ link_public_api(int)
310
+ linkage_get_link_num_domains(Linkage linkage, int index);
311
+ link_public_api(const char **)
312
+ linkage_get_link_domain_names(Linkage linkage, int index);
313
+ link_public_api(const char **)
314
+ linkage_get_words(Linkage linkage);
315
+ link_public_api(const char *)
316
+ linkage_get_disjunct_str(Linkage linkage, int w);
317
+ link_public_api(double)
318
+ linkage_get_disjunct_cost(Linkage linkage, int w);
319
+ link_public_api(double)
320
+ linkage_get_disjunct_corpus_score(Linkage linkage, int w);
321
+ link_public_api(const char *)
322
+ linkage_get_word(Linkage linkage, int w);
323
+ link_public_api(char *)
324
+ linkage_print_disjuncts(Linkage linkage);
325
+ link_public_api(void)
326
+ linkage_free_disjuncts(char *str);
327
+ link_public_api(char *)
328
+ linkage_print_links_and_domains(Linkage linkage);
329
+ link_public_api(void)
330
+ linkage_free_links_and_domains(char *str);
331
+ link_public_api(char *)
332
+ linkage_print_senses(Linkage linkage);
333
+ link_public_api(void)
334
+ linkage_free_senses(char *str);
335
+ link_public_api(char *)
336
+ linkage_print_constituent_tree(Linkage linkage, int mode);
337
+ link_public_api(void)
338
+ linkage_free_constituent_tree_str(char *str);
339
+ link_public_api(char *)
340
+ linkage_print_postscript(Linkage linkage, int mode);
341
+ link_public_api(void)
342
+ linkage_free_postscript(char * str);
343
+ link_public_api(char *)
344
+ linkage_print_diagram(Linkage linkage);
345
+ link_public_api(void)
346
+ linkage_free_diagram(char * str);
347
+ link_public_api(int)
348
+ linkage_compute_union(Linkage linkage);
349
+ link_public_api(int)
350
+ linkage_is_fat(Linkage linkage);
351
+ link_public_api(int)
352
+ linkage_unused_word_cost(Linkage linkage);
353
+ link_public_api(int)
354
+ linkage_disjunct_cost(Linkage linkage);
355
+ link_public_api(int)
356
+ linkage_and_cost(Linkage linkage);
357
+ link_public_api(int)
358
+ linkage_link_cost(Linkage linkage);
359
+ link_public_api(double)
360
+ linkage_corpus_cost(Linkage linkage);
361
+ link_public_api(int)
362
+ linkage_is_canonical(Linkage linkage);
363
+ link_public_api(int)
364
+ linkage_is_improper(Linkage linkage);
365
+ link_public_api(int)
366
+ linkage_has_inconsistent_domains(Linkage linkage);
367
+ link_public_api(const char *)
368
+ linkage_get_violation_name(Linkage linkage);
369
+
370
+
371
+ /**********************************************************************
372
+ *
373
+ * Functions that allow special-purpose post-processing of linkages
374
+ *
375
+ ***********************************************************************/
376
+
377
+ typedef struct Postprocessor_s PostProcessor;
378
+
379
+ link_public_api(PostProcessor *)
380
+ post_process_open(const char *path);
381
+ link_public_api(void)
382
+ post_process_close(PostProcessor *);
383
+ link_public_api(void)
384
+ linkage_post_process(Linkage, PostProcessor *);
385
+
386
+ /**********************************************************************
387
+ *
388
+ * Constituent node
389
+ *
390
+ ***********************************************************************/
391
+
392
+ typedef struct CNode_s CNode;
393
+
394
+ link_public_api(CNode *)
395
+ linkage_constituent_tree(Linkage linkage);
396
+ link_public_api(void)
397
+ linkage_free_constituent_tree(CNode * n);
398
+ link_public_api(const char *)
399
+ linkage_constituent_node_get_label(const CNode *n);
400
+ link_public_api(CNode *)
401
+ linkage_constituent_node_get_child(const CNode *n);
402
+ link_public_api(CNode *)
403
+ linkage_constituent_node_get_next(const CNode *n);
404
+ link_public_api(int)
405
+ linkage_constituent_node_get_start(const CNode *n);
406
+ link_public_api(int)
407
+ linkage_constituent_node_get_end(const CNode *n);
408
+
409
+ /**********************************************************************
410
+ *
411
+ * Internal functions -- do not use these in new code!
412
+ * These are not intended for general public use, but are required to
413
+ * work around certain Micorsoft Windows linking oddities
414
+ * (specifically, to be callable from the JNI bindings library.)
415
+ *
416
+ ***********************************************************************/
417
+
418
+ link_public_api(void)
419
+ parse_options_print_total_time(Parse_Options opts);
420
+
421
+ #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 4)
422
+ #define GNUC_PRINTF( format_idx, arg_idx ) \
423
+ __attribute__((__format__ (__printf__, format_idx, arg_idx)))
424
+ #else
425
+ #define GNUC_PRINTF( format_idx, arg_idx )
426
+ #endif
427
+
428
+ link_public_api(void)
429
+ prt_error(const char *fmt, ...) GNUC_PRINTF(1,2);
430
+
431
+ /*******************************************************
432
+ *
433
+ * Obsolete functions -- do not use these in new code!
434
+ * XXX TBD: These will all go away in Version 5.0.
435
+ *
436
+ ********************************************************/
437
+
438
+ /* Identical to sentence_get_word()
439
+ * XXX TBD: make this go away in Version 5.0. */
440
+ link_public_api(const char *)
441
+ sentence_get_nth_word(Sentence sent, int i);
442
+
443
+ /* Who uses this function, anyway? How did this get exported?
444
+ * XXX TBD: make this go away in Version 5.0. */
445
+ link_public_api(int)
446
+ sentence_nth_word_has_disjunction(Sentence sent, int i);
447
+
448
+ /* This is not intended for general use; its specific to the internals
449
+ * of the command-line client. It was exported by accident.
450
+ * XXX TBD: make this go away in Version 5.0. */
451
+ link_public_api(int)
452
+ issue_special_command(const char * line, Parse_Options opts, Dictionary dict);
453
+
454
+ /* These are obsolete, and do nothing.
455
+ * XXX TBD: make these go away in Version 5.0. */
456
+ link_public_api(void)
457
+ lperror_clear(void);
458
+ extern link_public_api(int)
459
+ lperrno;
460
+ extern link_public_api(char)
461
+ lperrmsg[];
462
+
463
+ LINK_END_DECLS
464
+
465
+ #endif