Algorithm Analysis Start with 102 coins on a table, 98 showing heads and 4 showing tails. There are two ways to change the coins: • flip over any ten coins, or • place n+ 1 additional coins, all showing tails, on the table where n is the number of heads currently showing on the table. For example, you might begin by flipping nine heads and one tail, yielding 90 heads and 12 tails, then add 91 tails, yielding 90 heads and 103 tails. (a) Model this situation as a state machine, carefully defining the set of states, the start state, and the possible state transitions. (b) Optionally, explain how to reach a state with exactly one tail showing. (c) Consider the following derived variables:

C++ for Engineers and Scientists
4th Edition
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Bronson, Gary J.
Chapter4: Selection Structures
Section: Chapter Questions
Problem 14PP
icon
Related questions
Question
Algorithm Analysis
Start with 102 coins on a table, 98 showing heads and 4 showing tails. There are two ways to
change the coins:
• flip over any ten coins, or
• place n+ 1 additional coins, all showing tails, on the table where n is the number of heads
currently showing on the table.
For example, you might begin by flipping nine heads and one tail, yielding 90 heads and 12 tails,
then add 91 tails, yielding 90 heads and 103 tails.
(a) Model this situation as a state machine, carefully defining the set of states, the start state, and
the possible state transitions.
(b) Optionally, explain how to reach a state with exactly one tail showing.
(c) Consider the following derived variables:
C ::= the number of coins on the table H ::= the number of heads on the table
T::= the number of tails on the table C, ::= parity (C)
H2 ::= parity(H)
T2 ::= parity(T)
Here the parity : Z → {0,1} function is defined as parity(n) = 0 when n is even and 1
otherwise.
Which of these variables is strictly decreasing. Optionally, prove your conclusion.
(d) Someone claims that this algorithm/process should be able to reach a state where there is
exactly one head. Prove using the Invariant Principle that they are wrong. Optionally, verify
that the predicate you use is indeed a preserved invariant.
(e) Unrelated to the above problem, describe the asymptotic behavior of f(n) ::= n+lnn+(lnn)-
by relating it using the Big-Theta relation to one fo the following: n,n' logn,n, 1,2", 2" In".
Transcribed Image Text:Algorithm Analysis Start with 102 coins on a table, 98 showing heads and 4 showing tails. There are two ways to change the coins: • flip over any ten coins, or • place n+ 1 additional coins, all showing tails, on the table where n is the number of heads currently showing on the table. For example, you might begin by flipping nine heads and one tail, yielding 90 heads and 12 tails, then add 91 tails, yielding 90 heads and 103 tails. (a) Model this situation as a state machine, carefully defining the set of states, the start state, and the possible state transitions. (b) Optionally, explain how to reach a state with exactly one tail showing. (c) Consider the following derived variables: C ::= the number of coins on the table H ::= the number of heads on the table T::= the number of tails on the table C, ::= parity (C) H2 ::= parity(H) T2 ::= parity(T) Here the parity : Z → {0,1} function is defined as parity(n) = 0 when n is even and 1 otherwise. Which of these variables is strictly decreasing. Optionally, prove your conclusion. (d) Someone claims that this algorithm/process should be able to reach a state where there is exactly one head. Prove using the Invariant Principle that they are wrong. Optionally, verify that the predicate you use is indeed a preserved invariant. (e) Unrelated to the above problem, describe the asymptotic behavior of f(n) ::= n+lnn+(lnn)- by relating it using the Big-Theta relation to one fo the following: n,n' logn,n, 1,2", 2" In".
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Knowledge Booster
Random Class and its operations
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr