The signal-to-noise ratio SNR of a continuous communication channel…
Question Answered step-by-step The signal-to-noise ratio SNR of a continuous communication channel… The signal-to-noise ratio SNR of a continuous communication channel might be different in different parts of its frequency range. For example, the noise might be predominantly high frequency hiss, or low frequency rumble. Explain how the information capacity C of a noisy continuous communication channel, whose available bandwidth spans from frequency ?1 to ?2, may be defined in terms of its signal-to-noise ratio as a function of frequency, SNR(?). Define the bit rate for such a channel’s information capacity, C, in bits/second, in terms of the SNR(?) function of frequencyDetail how you handle procedurevalued variables, and state whether it is possible to improve on the technique you have chosen for such variables. [6 marks] (c) Argue how feasible it is to calculate the call graph for a Java program, considering carefully the case of inheritance and use of the final keyword. [3 markse delivery of goods that she claims she did not order. (a) What is needed to establish that a contract actually existed? [4 marks] (b) What other information is it useful to keep about your customers, and what could you use it for? [4 marks] (c) Describe some of the problems of anonymous payment schemes such as digital cash. Where might they be useful? [8 marks] (d) What recourse would the customer have if she had paid using such a system, and how would you detect whether such a complaint was fraudulent? [4 marks] 6 Security You are developing a multi-user computer game, and wish touthentication [4 marks] (ii) virus detection technology [4 marks] (iii) intrusion detection techniques [4 marks] (b) What might be the advantages and disadvantages of issuing players with a smartcard and reader? [8 marks] 4 CST.2001.7.5 7 Neural Computing (a) (i) In a Hopfield neural network configured as an associative memory, with all of its weights trained and fixed, what three possible behaviours may occur over time in configuration space as the net continues to iterate in response to a given input? [3 marks] (ii) How many stable content-addressable memories would you expect a fully connected Hopfield network consisting of 100 neurons to be capable of storing? [1 mark] (iii) What property of those memory patterns would make it ther into the three available spatial dimensions of neural tissue, by the structure of the cubic millimetre hypercolumns in the brain’s visual cortex. [5 marks] (c) The retina is often regarded as an image capture device; but it has about 100 million input sensors (photoreceptors) yet only 1 million output fibres (optic nerve axons). What are some implications of this 100-to-1 ratio of input channels to output channels? [4 marks] (d) Provide some quantitative evidence and arguments supporting the proposition that: “Connectivity is the basic computational principle in the brain”. [4 marks] 8 Computer Systems Modelling (a) What criteria would you consider when selecting between a model based on queueing theory and one based on simulation? When might you use both approaches? [5 marks] (b) Describe the structure of a discrete event simulator. What is the principal data structure involved? [5 marks] (c) A queueing network is characterised by a set of visit counts, Vi , and per-visit service requirements, Si , for each of N devices. Derive upper bounds on the system throughput (i) when the load is very low and (ii) as the load tends to infinity. [5 marks] (d) In what situations may the bounds be particularly imprecise? What can be done to construct tighter bounds for the system throughput? [ 1 Data Structures and Algorithms (a) Describe and justify an algorithm for finding the shortest distance between each pair of vertices in an undirected graph in which each edge has a given positive length. If there is no path between a pair of vertices a very large result should arise. [12 marks] (b) Is it sensible to use your algorithm to discover whether such a graph is connected? Suggest an alternative that would be appropriate for a graph of 1000 vertices and 10,000 edges. [8 marks] 2 Computer Design (a) What is a pipeline bubble and why might a branch instruction introduce one or more bubbles? [4 marks] (b) Explain, with the aid of an example, how conditional instructions may be used to reduce the number of bubbles in a pipeline. [4 marks] (c) What is the difference between branches, interrupts, software interrupts (initiated by a SWI instruction on the ARM) and exceptions? [8 marks] (d) What is an imprecise exception and why might a processor designer prefer it to a precise exception mechanism? [4 marks] 2 CST.2001.5.3 3 Digital Communication I Information is to be conveyed from A to B using automatic repeat request (ARQ), forward error correction (FEC), and lossless compression. (a) Explain the terms ARQ, FEC and lossless compression. [5 marks] (b) If we consider each of these functions to be operating at different protocol layers, what would be the most sensible ordering of the layers, and why? [5 marks] (c) Suppose: The underlying bit channel has a capacity of B, a delay ? and error rate 0. The compression ratio is C < 1. The FEC has rate R < 1 and given an error rate 0 provides an error rate 1 (which is detected). The ARQ protocol has a window size of W. At what rate can the information be conveyed? [Hint: Consider when retransmissions are made.] State any assumptions you make about the operation of the ARQ protocol. [10 marks] 3 [TURN OVER CST.2001.5.4 4 Computer Graphics and Image Processing (a) Describe the limitations of human vision in terms of: (i) spatial resolution (ii) luminance (iii) colour and explain the implications that each of these limitations has on the design of display devices. [10 marks] (b) In image compression we utilise three different mechanisms to compress pixel data: (i) mapping the pixel values to some other set of values (ii) quantising those values (iii) symbol encoding the resulting values Explain each mechanism, describe the way in which it helps us to compress the image, and describe in what way it affects the visual quality of the resulting (decompressed) image when compared with the original. [10 marks] SECTION B 5 Comparative Programming Languages (a) Outline the main innovations that are in Simula 67 but were not in Algol 60, paying particular attention to Simula Classes. [6 marks] (b) Illustrate how Simula can be used to simulate a small restaurant with six tables, two waiters and small groups of customers arriving at random intervals. You need specify only the classes you would define. Most of the algorithmic details may be omitted. [6 marks] (c) Discuss to what extent Simula has been made redundant by the development of modern object-oriented languages such as Java. [8 marks] 4 CST.2001.5.5 6 Compiler Construction Consider a language J which has Java-like syntax nested definitions of procedures within other procedures local variables (with static binding) raising and handling of named, parameterless exceptions Explain a possible run-time data structure which a compiler for J might use. [10 marks] A na¨?ve user of such a language suggests that the resultant compiled code will spend a significant fraction of execution time searchingboth finding the store location corresponding to the use of a variable name and finding the exception handler corresponding to the raising of a given exception name. Determine with justification whether this is so for your run-time data-structure proposed above. [4 marks] Now instead suppose a simple interpreter for J is written, so that searches for variable (or exception) names search the appropriate environment for the variable value or exception handler code. To what extent are these searches bounded by (a) the number of variables or exceptions in the program or (b) the dynamic or static nesting of procedures? [6 marks] 7 Prolog for Artificial Intelligence Consider the following Prolog program, which is intended to define the third argument to be the maximum value of the first two numeric arguments: max(X, Y, X) :- X >= Y, !. max(X, Y, Y). (a) Provide an appropriate query to show that the above program can give an incorrect result. [4 marks] (b) Explain the cause of the error. [6 marks] (c) Suggest a correction. [5 marks] (d) Write a Prolog program to find the maximum of a list of numbers. [5 marks] 5 [TURN OVER CST.2001.5.6 8 Databases (a) Explain how to describe the structure of a collection of data using entities, attributes and relationships. [6 marks] (b) How would you identify particular instances of data in order to record the information in a database? Illustrate your answer by considering both a relational database maintained using SQL-92 and an ODMG database. [6 marks] (c) A high street bank has just announced a merger with a nationwide building society. You are employed as a consultant to advise on the integration of their client databases. Both institutions use relational databases. Write brief notes to alert the database administrators to the difficulties that they may encounter. [8 marks] SECTION C 9 Semantics of Programming Languages (a) The integer expressions E of a programming language are given by E ::= n | X | ?E | E + E where n ranges over integer constants and X ranges over identifiers. Explain the principle of structural induction for proving that some property ?(E) holds for all integer expressions E. [5 marks] (b) Taking states to be finite partial functions mapping identifiers to integer constants, define a relation E, s ? n giving the result n (if any) of evaluating integer expression E in state s. [7 marks] (c) Use structural induction to prove that if E, s ? n1 and E, s ? n2 both hold, then n1 = n2. [Hint: Consider the property ?(E) given by ?s, n1, n2((E, s ? n1) & (E, s ? n2) ? n1 = n2).] [7 marks] (d) What property of the pair E, s ensures that there is some n for which E, s ? n holds? [1 mark] 6 CST.2001.5.7 10 Foundations of Functional Programming (a) Write a pure lambda-expression that will act as a fixed-point operator Y such that the identity Y f = f(Y f) will hold. [6 marks] (b) Write pure lambda-expressions that define functions P, A and D such that A (P x y) = x and D (P x y) = y. Observe that P can be thought of as creating a 2-tuple and A and D then act as selectors that can retrieve the two components. [7 marks] (c) Using the two above lambda-expressions it is possible to express mutual recursion between two functions, say f and g. This can be done by using Y to help find the value of (P f g) the tuple whose elements are f and g. Using the artificial and rather silly example [the example will never terminate since it has no stopping condition!] f x = g (f (g x)) AND g x = g (f x) show how to construct a pure lambda expression that would evaluate (f g) [7 marks] 11 Logic and Proof (a) Explain the meaning of the notation A |= B, where A and B denote formulae of (i) propositional logic and (ii) S4 modal logic. [2+6 marks] (b) For each of the following equivalences, state whether it holds or not, justifying each answer rigorously. (P ? (Q ? R)) ? S ‘ (¬P ? ¬Q ? S) ? (¬P ? ¬R ? S) (P ? Q) ? (Q ? P) ‘ (Q ? P) ?xy (P(x) ? ¬P(y)) ‘ ?xy (P(x) ? P(y)) [3+3+6 marks] 7 [TURN OVER CST.2001.5.8 12 Complexity Theory (a) Give a precise definition of the complexity class NP and of NP-completeness. [2 marks each] (b) For any natural number k, the problem k-colourability is defined as the following decision problem. Given a graph G = (V, E), is there a mapping ? : V ? {c1, . . . , ck} such that if (u, v) ? E, then ?(u) 6= ?(v)? (i) Explain why, for each k, the problem k-colourability is in the class NP. [2 marks] (ii) For what values of k is the problem k-colourability decidable in polynomial time? Why? [2 marks] (iii) For which values of k is the problem k-colourability NP-complete? Give a brief indication how this might be proved. [2 marks] (c) The company Fon-X runs a mobile ‘phone service. It has 2000 ‘phone masts stationed across the country. The frequency spectrum assigned to the company is split into 20 bands. Each mast is to be assigned a frequency band in such a way that masts within 50 miles of each other do not share the same frequency band. (i) What is the relationship between this problem and k-colourability?tackle every question provided. Suppose we wish to compute a predicted value for some continuous, differentiable function f(t) at future time t = b, based only upon knowledge of its value now at time t = a, which is f(a), and its first three derivatives now, namely f 0 (a), f 00(a), and f 000(a). How would you compute such a prediction for the future value f(b)? Give a formula or explain the sorts of terms that it would include and why they appear. [6 marks] In practical computing problems with numerical data that are discretely sampled at periodic points in time, derivatives defined in terms of continuous limits must be replaced by discrete estimates. Provide finite-difference expressions for each of the three derivatives f 0 (t), f 00(t), and f 000(t) on the discrete set of samples . . . , f(ti), f(ti+1), f(ti+2), f(ti+3), . . . assuming that in this sequence the samples are separated by a constant interval ?t = ti+1 ? ti . [8 marks] Real-world signals are generally accompanied by noise. Using the Differentiation Theorem of the Fourier Transform, comment upon how noise is amplified as a function of its spectral composition when computing first-order, second-order, and third-order derivatives of the signal. [6 marks] 2 CST.96.4.3 4 Compiler Construction Describe a structure that could be used to represent the abstract syntax tree of the following ?-expression: (?a.(?f.f a)(?n.n + 1))3 Outline the definition of an evaluator function eval(expr, env) that could be used to evaluate a given expression expr represented in this way in the context of an environment given by env. Pay particular attention to the treatment of bound variables and the mechanism you use for function calls. [7 marks] Is it possible with your implementation to give it a ?-expression which would cause eval to recurse to an unlimited depth? If so, give such a ?-expression; if not, explain why. [3 marks] Is it possible with your implementation to give it a ?-expression that causes an environment chain of unlimited length to be created during the evaluation? If so, give a ?-expression that would cause this; if not, explain why it is not possible. [3 marks] In an erroneous implementation of eval the value of (?x.body) is an object that does not incorporate the contextual environment, and whose call evaluates body in an environment derived from the environment of the call. Explain why such an implementation is wrong, giving an example ?-expression that would yield different results when evaluated by this implementation and yours. [7 marks] 5 Data Structures and Algorithms Show why comparison-based sorting of n items cannot take much less than n log n comparisons, being clear about your assumptions. Why can it take any less than n log n? [10 marks] If 1024 numbers are drawn randomly in the range 0-127 and sorted by binary insertion, about how many compares would you expect? A fairly rough estimate will do if your reasoning is clear. [10 marks] 3 [TURN OVER CST.96.4.4 6 Structured Hardware Design Describe logic synthesis by writing short notes on each of the following topics: (a) input language constructs (b) output format (c) use of libraries of subcircuits (d) technology independence (e) guiding metrics and constraints (f ) synthesis for multiple instances (g) disadvantages compared with alternative approaches [20 marks] 7 Operating System Functions What is meant by the term demand paging in a virtual memory management system, and how is it implemented? [5 marks] Briefly describe five techniques which the operating system and/or hardware can implement to improve the efficiency of demand paging. [5 marks] What is the working set of a program, and how can an operating system use it in the management of virtual memory?answer all Engineering & Technology Computer Science COMPUTER 135 Share QuestionEmailCopy link Comments (0)


