{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

notes15 Decidability and Recognizability

# notes15 Decidability and Recognizability - CS 373 Theory of...

This preview shows pages 1–4. Sign up to view the full content.

CS 373: Theory of Computation Gul Agha Mahesh Viswanathan Fall 2010 1

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
1 High-Level Descriptions of Computation High-Level Descriptions of Computation Instead of giving a Turing Machine, we shall often describe a program as code in some programming language (or often “pseudo-code”) Possibly using high level data structures and subroutines Inputs and outputs are complex objects, encoded as strings Examples of objects: Matrices, graphs, geometric shapes, images, videos, . . . DFAs, NFAs, Turing Machines, Algorithms, other machines . . . High-Level Descriptions of Computation Encoding Complex Objects “Everything” finite can be encoded as a (finite) string of symbols from a finite alphabet (e.g. ASCII) Can in turn be encoded in binary (as modern day computers do). No special t symbol: use self-terminating representations Example: encoding a “graph.” (1,2,3,4)((1,2)(2,3)(3,1)(1,4)) encodes the graph 1 2 3 4 High-Level Descriptions of Computation We have already seen several algorithms, for problems involving complex objects like DFAs, NFAs, regular expressions, and Turing Machines For example, convert a NFA to DFA; Given a NFA N and a word w , decide if w L ( N ); . . . All these inputs can be encoded as strings and all these algorithms can be implemented as Turing Machines Some of these algorithms are for decision problems, while others are for computing more general functions All these algorithms terminate on all inputs 2
High-Level Descriptions of Computation Examples: Problems regarding Computation Some more decision problems that have algorithms that always halt (sketched in the textbook) On input h B, w i where B is a DFA and w is a string, decide if B accepts w . Algorithm: simulate B on w and accept iff simulated B accepts On input h B i where B is a DFA, decide if L ( B ) = . Algorithm: Use a fixed point algorithm to find all reachable states. See if any final state is reachable.

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}