Logic Programming with Temporality, Names and List Comprehension
Logic programming has been known for its ability to execute specifications as programs directly. The one based on linear logic can further model the states in real systems. Unfortunately, some common concepts are rather inconvenient to express in a typical linear logic. For example, maintaining a global counter for the number of data in a system requires careful manual updating in every rule.
Motivated by social networking sites, I have created a new logic for logic programming which addresses several usability issues in a typical linear logic. The extensions include temporality (which can be used to handle global information), name generation and list comprehension. I also showed that there is a sound and complete compilation from this logic to a known linear logic. This talk will primarily focus on the definition and the usage of the new logic.