<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>1405-5546</journal-id>
<journal-title><![CDATA[Computación y Sistemas]]></journal-title>
<abbrev-journal-title><![CDATA[Comp. y Sist.]]></abbrev-journal-title>
<issn>1405-5546</issn>
<publisher>
<publisher-name><![CDATA[Instituto Politécnico Nacional, Centro de Investigación en Computación]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S1405-55462018000401395</article-id>
<article-id pub-id-type="doi">10.13053/cys-22-4-3072</article-id>
<title-group>
<article-title xml:lang="en"><![CDATA[Context-Free Grammars Including Left Recursion using Recursive miniKanren]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Niitsuma]]></surname>
<given-names><![CDATA[Hirotaka]]></given-names>
</name>
<xref ref-type="aff" rid="Aff"/>
</contrib>
</contrib-group>
<aff id="Af1">
<institution><![CDATA[,Okayama University Graduate School of Natural Science and Technology ]]></institution>
<addr-line><![CDATA[Okayama ]]></addr-line>
<country>Japan</country>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>12</month>
<year>2018</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>12</month>
<year>2018</year>
</pub-date>
<volume>22</volume>
<numero>4</numero>
<fpage>1395</fpage>
<lpage>1402</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.mx/scielo.php?script=sci_arttext&amp;pid=S1405-55462018000401395&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.mx/scielo.php?script=sci_abstract&amp;pid=S1405-55462018000401395&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.mx/scielo.php?script=sci_pdf&amp;pid=S1405-55462018000401395&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="en"><p><![CDATA[Abstract: Recursive miniKanren is logic programming language which can deal infinite recursive data structure and a subset of the Scheme language. We define a pattern match macro which can use the same syntax of the match macro of the Scheme language using recursive miniKanren. The macro enables to write searching sub-list with a given pattern by only few line code. Using this property, we introduce techniques writing context-free grammar with our match macro. Unlike other specific paraphrasing tools, our technique can combine logical relations of miniKanren with a context-free grammar. We show the logical relations resolves the ambiguity of a grammar.]]></p></abstract>
<kwd-group>
<kwd lng="en"><![CDATA[Context-free grammars]]></kwd>
<kwd lng="en"><![CDATA[left recursion]]></kwd>
<kwd lng="en"><![CDATA[recursive miniKanren]]></kwd>
</kwd-group>
</article-meta>
</front><back>
<ref-list>
<ref id="B1">
<label>1</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Baader]]></surname>
<given-names><![CDATA[F.]]></given-names>
</name>
<name>
<surname><![CDATA[Snyder]]></surname>
<given-names><![CDATA[W.]]></given-names>
</name>
</person-group>
<source><![CDATA[Unification theory]]></source>
<year>1999</year>
</nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bird]]></surname>
<given-names><![CDATA[S.]]></given-names>
</name>
<name>
<surname><![CDATA[Klein]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
<name>
<surname><![CDATA[Loper]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
</person-group>
<source><![CDATA[Natural Language Processing with Python]]></source>
<year>2009</year>
<publisher-name><![CDATA[O&#8217;Reilly Media]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Byrd]]></surname>
<given-names><![CDATA[W. E]]></given-names>
</name>
</person-group>
<source><![CDATA[Relational programming in minikanren: techniques, applications, and implementations]]></source>
<year>2010</year>
<publisher-name><![CDATA[Indiana University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B4">
<label>4</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Byrd]]></surname>
<given-names><![CDATA[W. E.]]></given-names>
</name>
<name>
<surname><![CDATA[Holk]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
<name>
<surname><![CDATA[Friedman]]></surname>
<given-names><![CDATA[D. P.]]></given-names>
</name>
</person-group>
<source><![CDATA[minikanren, live and untagged quine generation via relational interpreters]]></source>
<year>2012</year>
<conf-name><![CDATA[ 2012 Workshop on Scheme and Functional Programming]]></conf-name>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Friedman]]></surname>
<given-names><![CDATA[D. P.]]></given-names>
</name>
<name>
<surname><![CDATA[Byrd]]></surname>
<given-names><![CDATA[W. E.]]></given-names>
</name>
<name>
<surname><![CDATA[Kiselyov]]></surname>
<given-names><![CDATA[O.]]></given-names>
</name>
</person-group>
<source><![CDATA[The Reasoned Schemer]]></source>
<year>2005</year>
<publisher-loc><![CDATA[Cambridge, MA ]]></publisher-loc>
<publisher-name><![CDATA[MIT Press]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Graham]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[On LISP: Advanced Techniques for Common LISP]]></source>
<year>1993</year>
<publisher-name><![CDATA[Prentice Hall]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hemann]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[Friedman]]></surname>
<given-names><![CDATA[D. P.]]></given-names>
</name>
</person-group>
<source><![CDATA[microkanren: A minimal functional core for relational programming]]></source>
<year>2013</year>
<conf-name><![CDATA[ 2013 Workshop on Scheme and Functional Programming]]></conf-name>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Keep]]></surname>
<given-names><![CDATA[A. W.]]></given-names>
</name>
<name>
<surname><![CDATA[Adams]]></surname>
<given-names><![CDATA[M. D.]]></given-names>
</name>
<name>
<surname><![CDATA[Kuper]]></surname>
<given-names><![CDATA[L.]]></given-names>
</name>
<name>
<surname><![CDATA[Byrd]]></surname>
<given-names><![CDATA[W. E.]]></given-names>
</name>
<name>
<surname><![CDATA[Friedman]]></surname>
<given-names><![CDATA[D. P.]]></given-names>
</name>
</person-group>
<source><![CDATA[A pattern matcher for miniKanren or how to get into trouble with CPS macros]]></source>
<year>2009</year>
<numero>CPSLO-CSC-09-03</numero>
<conf-name><![CDATA[ Scheme &#8217;09: Proceedings of the 2009 Scheme and Functional Programming Workshop]]></conf-name>
<conf-loc> </conf-loc>
<issue>CPSLO-CSC-09-03</issue>
<page-range>37-45</page-range><publisher-name><![CDATA[California Polytechnic State University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Moore]]></surname>
<given-names><![CDATA[R. C]]></given-names>
</name>
</person-group>
<source><![CDATA[Removing left recursion from context-free grammars]]></source>
<year>2000</year>
<conf-name><![CDATA[ 1st North American Chapter of the Association for Computational Linguistics Conference, NAACL 2000]]></conf-name>
<conf-loc>Stroudsburg, PA, USA </conf-loc>
<page-range>249-55</page-range></nlm-citation>
</ref>
</ref-list>
</back>
</article>
