In addition, a CSP has a set C = {C1, . . . , Cm} of constraints, each relating to a subset of X and specifying the allowable combinations of assignments to the variables in that subset. (a) Give a general definition of a solution to a CSP. [1 mark] (b) Given a binary CSP, define what it means for a directed arc xi xj between variables xi and xj to be arc consistent. If it exists add it to the graph. 3. Relate the sequence of questions to the bits in a uniquely decodable prefix code for X. [1 mark] if they are actually to be of use. In Java, expressions are evaluated strictly left-to-right. Consider compiling the function f in the following Java class definition: class A { static int a,b; void f() { ... <> ... } int g(int x) { ... a++; ... } }; Indicate what both the intermediate code and (improved as above) target code might be for <> for the cases where <> is: (i) b = g(7) + a; (ii) b = a + g(7); (iii) b = (-g(7)) + a; (iv) b = a - g(7); Comment on any inherent differences in efficiency at both the intermediate code and target code levels. (c) In what ways would you expect languages 25 years from now to differ from those that are currently popular? [5 marks] If yes, provide a short proof. If no, provide a counter-example. [2 marks] (d) Various normal forms are important in relational schema design. (i) Define Third Normal Form (3NF). [3 marks] (ii) Define Boyce-Codd Normal Form (BCN F). [3 marks] (iii) For databases with many concurrent update transactions, explain why schemas in normal form are important for good performance. The object of the search is to find a path from the initial state to a goal state using a tree. Consider an operating system that uses hardware support for paging to provide virtual memory to applications. (a) (i) Explain how the hardware and operating system support for paging combine to prevent one process from accessing another's memory. [3 marks] (ii) Explain how space and time overheads arise from use of paging, and how the Translation Lookaside Buffer (TLB) mitigates the time overheads. [3 marks] (b) Consider a system with a five level page table where each level in the page table is indexed by 9 bits and pages are 4 kB in size. A TLB is provided that is indexed by the first 57 bits of the address provided by the process, and achieves a 90% hit rate. 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?