Reader

[1]:
from lambeq import Reader, cups_reader, spiders_reader, stairs_reader
[2]:
sentence = 'This is a sentence'
[3]:
try:
    Reader()
except TypeError as e:
    print(e)
Can't instantiate abstract class Reader with abstract method sentence2diagram
[4]:
cups_reader.sentence2diagram(sentence).draw()
../_images/examples_reader_4_0.png
[5]:
spiders_reader.sentence2diagram(sentence).draw()
../_images/examples_reader_5_0.png
[6]:
from discopy.drawing import Equation
from discopy.grammar.pregroup import Spider, Ty

# since spiders are associative, lambeq will automatically choose
# the most efficient decomposition when converting to circuits
Equation(Spider(4, 1, Ty('s')), Spider(4, 1, Ty('s')).unfuse()).draw()
../_images/examples_reader_6_0.png
[7]:
stairs_reader.sentence2diagram(sentence).draw()
../_images/examples_reader_7_0.png