Question 1show via chains of equivalences that the

Assignment Help Theory of Computation
Reference no: EM13346935

Question 1

Show, via chains of equivalences, that the following propositions are tautologies.

(a) (p ∧ q) ⇒ (p ⇔ q)

(b) ((p ∨ q) ⇒ r ) ⇒ (¬ p ∨ (q ∨ r ))

Question 2

Show that the tautologies of Question 1 are also theorems of our proof system by exhibiting proof trees in which there are no undischarged assumptions.

Question 3

Simplify, using the one-point rule and other rules of predicate logic, the following statement.

(∃ z : N • (∃ x : N • (x < 1 ∧ x = z ∧ y = x )) ∨ (y = z ∧ z = 1))

You should assume that y ∈ N.

Question 4

Suppose that the relation R is an element of the set X ↔ Y and the relation S is an element of the set Y ↔ Z. Assume further that A is an element of P Z and that B is an element of PX.

Show, via a proof of the form

z → x ∈ A C (R 0 S) ~ B 


.
.

z → x ∈ (S B A) ∼ 0 (B C R) ∼

that

A C (R o S) ~ B  = (S 0 A) ~ o (B C R) ~

Question 5

This question pertains to the modelling of a digital music device. We start by introducing four basic types:

[Id,Artist , SongTitle,AlbumTitle]

Next, we introduce three abbreviations:

TrackNumber == N
Length == N
Size == N

Finally, we assume the existence of a set, Time.

We now introduce three functions, song details, track data, and plays:

song details : Id → (SongTitle × Artist × AlbumTitle)
track data : Id → (Time × Length × Size)
plays : seq (Id × Time)

Here, assuming an identifier, i ∈ Id:

  • song details (i ) captures the details of a track;
  • (track data (i )).1 is the time at which the file was added, (track data (i )).2

is the length (in seconds) of the track, and (track data (i )).3 is the size (in bytes) of the file; and

  • (i , t ) ∈ ran plays indicates that track i was played at time t .

Complete the axiomatic definition by adding the following constraints.
(a) The domain of song details should be the same as the domain of track data.

(b) Only tracks appearing in song details and track data may appear in plays.

(c) No track can be played before it has been added to song details and track data.

(d) The elements of plays should be ordered in an earliest-first fashion.

Question 6

Building on the definitions of Question 5, define expressions that capture the following.

(a) The set of duplicate tracks - where duplicates are defined as tracks which have the same song title and artist.

(b) The details of all tracks - in the form (song title, artist, album title)

- that are at least 5 minutes long.

(c) The details of all tracks - in the form (song title, artist, album title)

- that have been played at least 10 times.

(d) The set of all albums that are at least 60 minutes in length. (We assume that 'albums' are determined by values of type AlbumTitle.)

(e) The set of all artists that have received at 1000 minutes of 'play time'.

Question 7

Building on the definitions of Question 5, define the following functions.

(a) A function that takes an identifier as input and returns the number of plays of that song (as defined by plays).

(b) A function that takes an album title as input and returns the set of song titles associated with it (as per song details).

(c) A function that takes an identifier as input and, by taking account the contents of song details, track data and plays, returns a tuple of type SongTitle × Artist × AlbumTitle × Time × N, where the fourth component is the 'last played' time and the fifth component is the
number of plays. (You should feel free to assume the existence of an element null ∈ Time).

Question 8

Assume the following definition
Play == Id × SongTitle × Artist × AlbumTitle × Time × N
Here, the fifth component is the 'last played' time and the sixth component is the number of plays of the track. Again, you should feel free to assume the existence of an element null ∈ Time.

Define the following recursive functions.

(a) A function that takes an element of type seq Play and returns the total number of plays of songs appearing in that sequence. We shall call this function totalplaysS .

(b) A function that takes an element of type seq Play and filters by those songs appearing in song details.

(c) A function that takes an element of type seq Play and returns the identifier of the last played song.

Question 9

We may define a free type representing a tree-like structure as follows:

PlayTree ::= Stalk | NodehhPlay × PlayTreeii |
BranchhhPlayTree × PlayTreeii
Show how the functions of Question 8 might be reproduced using this structure in place of seq Play. We shall call the first of these - which takes an element of type PlayTree and returns the total number of plays of songs appearing in that tree - totalplaysT .

Question 10

(a) Write down a structural induction principle for the PlayTree free type.

(b) Define a function, TreeToSequence, that maps a tree to a sequence: it takes an element of PlayTree and returns an element of seq Play as output. In particular, we would expect the property of part (c) to hold.

(c) Show, using a suitable structural induction principle, that

∀ t : PlayTree •

totalplaysT (t ) = totalplaysS (TreeToSequence (t ))

Reference no: EM13346935

Questions Cloud

Use the infomation below to assess how much money jane and : use the infomation below to assess how much money jane and dave will be able to give to charity. they plan to make
P1 write the commands that will create the following matrix : p1 write the commands that will create the following matrix. you can use only special matrix commandsp2 two cars
Problemthe manager of the super supermarket would like to : problemthe manager of the super supermarket would like to be able to compute the unit price for products sold there. to
This individual assignment is based on the terracycle : this individual assignment is based on the terracycle inc.the case includes financial and managerial accounting topics
Question 1show via chains of equivalences that the : question 1show via chains of equivalences that the following propositions are tautologies.a p and q rarr p harr qb p or
Rsearch and discuss the differences and importance of : research and discuss the differences and importance of opps ipps mpfs and dmepos.- which provider type is paid by
Assignment cores on computer systemssingle-processor : assignment cores on computer systemssingle-processor computers were able to handle and process smaller sets of data.
Assignment discussionnote 2 pageturning to a market : assignment discussionnote 2 pageturning to a market economynbsp please respond to the followingnbspmany developing
Visual basic programming discussiondecision logic please : visual basic programming discussiondecision logic please respond to the followingthe use of decision logic is one of

Reviews

Write a Review

Theory of Computation Questions & Answers

  If m is a dfa accepting language b

If M is a DFA accepting language B, then exchangeing the accept and reject states gives a new DFA accepting the complement of B. Does this work for an NFA, why?

  Create and implement a lexical analyzer for c

Create and implement a lexical analyzer for C-- as follows: Write the set of token types to be returned by lexical analyzer. Explain regular expressions for this set of token types.

  Create standard 1-tape turing machine to calculate function

Create a standard 1-tape Turing machine M to calculate the function sub3. Specifically, calculate sub3 of a natural number represented in binary.

  Extend the ac scanner

A floatdcl can be represented as either f or float, allowing a more Java-like syntax for declarations - a intdcl can be represented as eitheri or int.

  Show polynomial-time algorithm for gdp

Goal is to find expedition of maximum profit. Either show that there exists polynomial-time algorithm for GDP, or show that corresponding decision problem is NP-complete.

  How to express correctness properties in ltl

Express the given correctness properties in LTL. Defne propositions/variables to model the events mentioned in the question. If a parent process calls the blocking waitpid() system call then it is blocked until child process terminates.

  Farmers friend for their customer support systems

Create the two main documents that model the current processes at Farmers Friend for their Customer Support Systems (CSS).

  Design and draw the state diagram

Design and draw the state diagram (graph-representation) of a deterministic finite-state automata that recognizes the language generated by the grammar

  Create a recursive java method maximum

Create a recursive java method maximum that calculate the maximum element of a linked list of integers.The solution must be simplified and should not use class Node or head

  Write problems which have no solutions

What does the term solvable mean to you? What does it mean to say that "you solved a problem"? Determine examples of problems for which you believe there are no solutions.

  Prepare a research strategy

A research strategy is a plan of action that gives direction to your efforts enabling you to conduct your research systemically rather than haphazardly.

  Many programs require the use of an input

Many programs require the use of an input mechanism to get data into the program and an output mechanism to present results and guidance.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd