1 Assume that the times required to perform the various acti
1. Assume that the times required to perform the various actions needed to execute our MIPS instructions are as follows:
• Fetch the instruction while incrementing the PC 12ns
 • Decode the instruction while reading two input registers and sign-extending an immediate operand 4ns
 • Perform an ALU operation while computing a branch target address 10ns
 • Data memory access (i.e. a read or write) 12ns
 • Write a register 2ns
 
 a) (10) What would be the maximum clock rate that could be used for the single cycle datapath implementation?
 b) (10) What would be the maximum clock rate that could be used for the multi-cycle datapath implementation?
 c) (10) What would be the maximum clock rate that could be used for the pipelined datapath implementation?
Solution
The pumping lemma for context-free languages (called simply \"the pumping lemma\" for the remainder of this article) describes a property that every one context-free languages ar sure to have.
The property could be a property of all strings within the language that ar of length a minimum of p, wherever p could be a constant—called the pumping length—that varies between context-free languages.
Say s could be a string of length a minimum of p that\'s within the language.
The pumping lemma states that s is split into 5 substrings, s = uvwxy, wherever vx is non-empty and also the length of vwx is at the most p, specified continuation v and x any (and the same) range of times in s produces a string that\'s still within the language (it is feasible and sometimes helpful to repeat zero times, that removes v and x from the string). This method of \"pumping up\" extra copies of v and x is what provides the pumping lemma its name.
Finite languages (which ar regular and thence context-free) adjust the pumping lemma trivially by having p adequate to the utmost string length in L and one. As there are not any strings of this length the pumping lemma isn\'t profaned.
Usage of the lemma[edit]
 The pumping lemma is usually wont to prove that a given language L is non-context-free, by showing that willy-nilly long strings s ar in L that can\'t be \"pumped\" while not manufacturing strings outside L.
For example, the language L = zero } is shown to be non-context-free by victimization the pumping lemma in an exceedingly proof by contradiction. First, assume that L is context free. By the pumping lemma, there exists associate degree whole number p that is that the pumping length of language L. contemplate the string s = apbpcp in L. The pumping lemma tells US that s is written within the kind s = uvwxy, where u, v, w, x, and y ar substrings, specified |vwx| p, |vx| 1, and uviwxiy is in L for each whole number i zero. By the selection of s and also the undeniable fact that |vwx| p, it\'s simply seen that the substring vwx will contain no over 2 distinct symbols. That is, we\'ve got one amongst 5 prospects for vwx:
vwx = aj for a few j  p.
 vwx = ajbk for a few j and k with j+k  p.
 vwx = bj for a few j  p.
 vwx = bjck for a few j and k with j+k  p.
 vwx = cj for a few j  p.
 For each case, it\'s simply verified that uviwxiy doesn\'t contain equal numbers of every letter for any i  one. Thus, uv2wx2y doesn\'t have the shape aibici. This contradicts the definition of L. Therefore, our initial assumption that L is context free should be false.
While the pumping lemma is usually a great tool to prove that a given language isn\'t context-free, it doesn\'t provides a complete characterization of the context-free languages. If a language doesn\'t satisfy the condition given by the pumping lemma, we\'ve got established that it\'s not context-free.
On the opposite hand, there ar languages that aren\'t context-free, however still satisfy the condition given by the pumping lemma, for instance L = j, k, l i, j , i1 : for s=bjckdl with e.g. j1 opt for vwx to consist solely of b’s, for s=aibjcjdj opt for vwx to consist solely of a’s; in each cases all tense strings ar still in L.[2] There ar a lot of powerful proof techniques accessible, like Ogden\'s lemma, however conjointly these techniques don\'t provides a complete characterization of the context-free languages.

