import gradio as gr logic_dict = { 'AND': '∧', 'OR': '∨', 'NOT': '¬', 'XR': '⊕', 'IMPLY': '→', 'EQUIV': '↔', 'ALL': '∀', 'EXIST': '∃' } def logic(string: str): processed_string = string for word, symbol in logic_dict.items(): processed_string = processed_string.replace(word, symbol) return processed_string demo = gr.Interface(fn=logic, inputs="text", outputs="text", examples=[ 'ALLx (Student(x) IMPLY Smart(x))', 'EXISTx (TShirt(x) AND Buy(adam, x))', 'ALLx ((Animal(x) AND Fluffy(x)) IMPLY (Rabbit(x) OR Sheep(x)))', '(GoDowntown(james) AND NOTCarry(james, bag)) EQUIV Buy(james, book)', 'ALLx (Project(x) IMPLY (WrittenIn(x, python) XR WrittenIn(x, c++)))' ], title="Logic Translator", description="Type English for logic symbols!\n∧:AND, ∨:OR, ¬:NOT, ⊕:XR, →:IMPLY, ↔:EQUIV, ∀:ALL, ∃:EXIST", live=True) demo.launch()