Computational Logic Lab at JAIST

[日本語/English/中文]

Contact

Rsearch Field

Our research field is theoretical computer science. In today's advanced IT society, everyone is using "computers" in the broad sense of the term, such as smartphones and personal computers, to enrich their lives. In our laboratory, we are not just using "computers" as tools, but are conducting research to theoretically re-formulate their mechanisms or to design new ones.

Specifically, we apply mathematical logic, a branch of mathematics, to scientifically explore the functions of programming and the specifications of software and communication protocols. Furthermore, we aim to realize highly reliable software by developing formal verification techniques that mathematically guarantee the correctness of algorithms and programs.

Keywords: Formal Specification/Verification, Many-sorted Equational Logic, Modal Logic, Dynamic Logic (Hoare Logic), Temporal Logic (Model Checking), Quantum Logic, Universal Algebra, State Transition System, Parallel Computation, Quantum Computation, Quantum Program/Protocol

Research Policy

Research Introduction

Student Guidance Policy

Fostering researchers in theoretical computer science

Researchers develop and formulate new programming and specification description functions and mechanisms that have never been proposed by anyone before. In our laboratory, students can work on establishing and refining new theories that are application- and implementation-oriented (rather than just theory for theory's sake) after steadily acquiring basic knowledge of mathematics. The goal is to construct a sophisticated theory that can influence society one hundred years from now.

Fostering engineers with a high level of expertise

Beyond a certain level, engineers are required to have a high level of expertise. Specifically, they must not only be able to program and write specifications, but also have a rigorous understanding of their operating principles and functions using mathematics. In our laboratory, students can work on designing interpreters and compilers for imperative programming languages using functional programming languages, writing formal specifications based on type theory and universal algebra, and analyzing communication protocols and distributed systems (model checking).

School Life

Textbooks

Here are some textbooks that are relevant to our laboratory's research. Basically, you will read these textbooks (several of them) after being assigned to our laboratory. All of the textbooks are already distributed in our Lab or JAIST Library.

Theory Programming

Members