
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN: 9780133594140
Author: James Kurose, Keith Ross
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Question
Write in the
- A function to simulate a deterministic Turing machine (DTM)
that (only) recognizes the language L, using the Python library automata-lib 5.0.0- L = {aibjck | i x j = k, i, j, k ≥ 1}
- A program to input/read input_data, call/execute function. output/print result/output_data
The function may print/report only erros
The function and program must be into two separate Python files.

Transcribed Image Text:class DTM(TM)
The DTM class is a subclass of TM and represents a deterministic Turing machine. It can be found under
automata/tm/dtm.py.
Every DTM has the following (required) properties:
1. states: a set of the DTM's valid states, each of which must be represented as a string
2. input_symbols: a set of the DTM's valid input symbols represented as strings
3. tape_symbols: a set of the DTM's valid tape symbols represented as strings
4. transitions: a dict consisting of the transitions for each state; each key is a state name and each value is a
dict which maps a symbol (the key) to a state (the value)
5. initial state: the name of the initial state for this DTM
6. blank_symbol: a symbol from tape_symbols to be used as the blank symbol for this DTM
7. final states: a set of final states for this DTM
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution
Trending nowThis is a popular solution!
Step by stepSolved in 3 steps

Knowledge Booster
Similar questions
- Use C language to write a programarrow_forwardPlease help me with this Principles of programming language homework questionarrow_forwardExample: The Problem Input File Using C programming language write a program that simulates a variant of the Tiny Machine Architecture. In this implementation memory (RAM) is split into Instruction Memory (IM) and Data Memory (DM). Your code must implement the basic instruction set architecture (ISA) of the Tiny Machine Architecture: //IN 5 //OUT 7 //STORE O //IN 5 //OUT 7 //STORE 1 //LOAD O //SUB 1 55 67 30 55 67 1 LOAD 2- ADD 3> STORE 4> SUB 5> IN 6> OUT 7> END 8> JMP 9> SKIPZ 31 10 41 30 //STORE O 67 //OUT 7 11 /LOAD 1 //OUT 7 //END 67 70 Output Specifications Each piece of the architecture must be accurately represented in your code (Instruction Register, Program Counter, Memory Address Registers, Instruction Memory, Data Memory, Memory Data Registers, and Accumulator). Data Memory will be represented by an integer array. Your Program Counter will begin pointing to the first instruction of the program. Your simulator should provide output according to the input file. Along with…arrow_forward
- The MATLAB function arg supports variable arguments, returns the sum of the number of arguments and all arguments, and has a help function. Write the arg so that the next execution results. >> help argIt supports variable arguments. >> [n,m] = arg(5,6)n = 2m = 11>> [n, m] = arg(3,4,5)n = 3m = 12arrow_forwardImplement a function ingredients in Python that takes a recipe and returns a dictionary of the ingredients needed. Details: accepts one multiline str argument containing a recipe each line of the recipe is either an instruction line or an ingredient line. The ingredient lines contain the character ':' , the instruction lines do not. instruction lines should be ignored ingredient lines will be structured like 'active dry yeast: 10g' . This breaks down as: an ingredient, e.g., 'active dry yeast' (can be multiple words) the character ':' followed by a space the quantity, e.g., '10g' , which will always be an integer (number of digits can vary) followed always by the letter 'g' ( for grams) note- that a particular ingredient may appear on more than one line, see sourdoughStarter below The function ingredients should output a dictionary: keys are ingredients each value is an int specifying the number grams of that ingredient used in the recipe if an ingredient appears on more than…arrow_forwardpost in python please and a coding editor too You are asked to help write a program that will help users purchase cookies. A user will input types of cookies and the number of cookies that they want, and your program will suggest how many boxes that they should order. There are 30 cookies per box, so your goal is to make sure that the user will buy enough boxes so that they will get the cookies that they want. Write a function cookie_order that takes a dictionary as a parameter containing cookie names as keys and numbers of those cookies as values. Have this function return a new dictionary that has cookie names and the number of boxes that should be purchased of each type. Hint: This means if someone wants 31 cookies, they need to buy 2 boxes of cookies of that type. You may want to consider using math.ceil for this problem. Examples: >>> cookie_order({'thin mints': 97}) {'thin mints': 4} >>> cookie_order({'thin mints':34, 'shortbread': 60, 'caramel delites': 71,…arrow_forward
- CODE IN C++ PLEASE....arrow_forwardA palindrome is a word, phrase, number, or other sequence of characters that reads the same forward and backward, disregarding spaces, punctuation, and capitalization. Write a function isPalindrome that takes in a string s and returns a boolean value indicating whether s is a palindrome. Example: Input: s = "racecar" Output: true Input: s = "Hello" Output: false Input: s = "A man, a plan, a canal, Panama" Output: true Input: s = "12321" Output: true Note: The input string may contain spaces, punctuation, and capitalization, but they should be disregarded while checking for palindromes. An empty string is considered a palindrome.arrow_forwardWrite a function using Java Function Name: winInRowParameters: board: 2D integer array, row: integer, piece: integerReturn: booleanAssume board is valid 2D int array, row is valid index in the board, piece is X==1/O==2Look at indicated row at given index in board. If that row has at least 3 consecutive entries withgiven type of piece (X/O) (3 in a row XXX, OOO), then return true, otherwise false.arrow_forward
arrow_back_ios
arrow_forward_ios
Recommended textbooks for you
- Computer Networking: A Top-Down Approach (7th Edi...Computer EngineeringISBN:9780133594140Author:James Kurose, Keith RossPublisher:PEARSONComputer Organization and Design MIPS Edition, Fi...Computer EngineeringISBN:9780124077263Author:David A. Patterson, John L. HennessyPublisher:Elsevier ScienceNetwork+ Guide to Networks (MindTap Course List)Computer EngineeringISBN:9781337569330Author:Jill West, Tamara Dean, Jean AndrewsPublisher:Cengage Learning
- Concepts of Database ManagementComputer EngineeringISBN:9781337093422Author:Joy L. Starks, Philip J. Pratt, Mary Z. LastPublisher:Cengage LearningPrelude to ProgrammingComputer EngineeringISBN:9780133750423Author:VENIT, StewartPublisher:Pearson EducationSc Business Data Communications and Networking, T...Computer EngineeringISBN:9781119368830Author:FITZGERALDPublisher:WILEY

Computer Networking: A Top-Down Approach (7th Edi...
Computer Engineering
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:PEARSON

Computer Organization and Design MIPS Edition, Fi...
Computer Engineering
ISBN:9780124077263
Author:David A. Patterson, John L. Hennessy
Publisher:Elsevier Science

Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:9781337569330
Author:Jill West, Tamara Dean, Jean Andrews
Publisher:Cengage Learning

Concepts of Database Management
Computer Engineering
ISBN:9781337093422
Author:Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:Cengage Learning

Prelude to Programming
Computer Engineering
ISBN:9780133750423
Author:VENIT, Stewart
Publisher:Pearson Education

Sc Business Data Communications and Networking, T...
Computer Engineering
ISBN:9781119368830
Author:FITZGERALD
Publisher:WILEY