Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Multinational Business Machine (MBM) has two subsidiaries, MBM France in Toulouse and MBM Japan in Kobe. The parent firm MBM USA expects MBM France to

Multinational Business Machine ("MBM") has two subsidiaries, MBM France in Toulouse and MBM Japan in Kobe. The parent firm MBM USA expects MBM France to repatriate 20 million euros (EUR) of its cash in three months. MBM Japan has come across an expansion opportunity in the Japanese market and requested an internal funding from MBM USA. The Japanese subsidiary needs 900 million Japanese yen (JPY) to finance this opportunity in three months. Suppose that EUR and JPY exchange rates, respectively, are currently $1.25 and $0.01, respectively.

a) If EUR is expected to appreciate against the U.S. dollar by 4% over the next three months, how much, in U.S. dollar, will the value of the repatriated cash (from MBM France) change?

b) [10 marks] Suppose JPY is expected to appreciate against the U.S. dollar by 6% over the next three months. Compute (i) how much, in U.S. dollar, MBM Japan's financing needs will change. Additionally, determine (ii) the overall effect, in U.S. dollar, on the value of MBM that the appreciation of the two foreign currencies will have yielded (i.e., compute net gain or loss)

This question covers a wide variety of topics in the interdisciplinary subject of Compiler Construction. (a) What is the difference between lexical analysis and parsing? [2 marks] (b) Give an example of an ambiguous context-free grammar together with a demonstration that it is indeed ambiguous. [3 marks] (c) In the context of functional programming, describe the concept of a closure and how it is used. [3 marks] (d) Can any recursive function be transformed into a tail-recursive function? Briefly explain you answer. [3 marks] (e) Describe one advantage and one disadvantage for using reference counting as a technique for memory management. [2 marks] (f ) For what kinds of programming languages might you employ static links on the stack? Explain your answer. [3 marks] (g) Consider an optimisation that replaces any expression of the form 0 e with 0, where e is an arbitrary expression. Why might this rule be useful in a compiler's optimisation phase? Is it always correct?

A social network can be represented as an undirected graph where vertexes represent people and edges represent bidirectional friendship relationships between two people. A developer constructs a simple representation of a social network using instances of the following Java class: public class Person implements Serializable { private final long accountId; private String fullname; private Set friends; public Person(String fullname) { ... } public void addFriends(Set friends) { ... } } (a) The developer wishes to ensure that all public methods for Person are thread-safe. Describe what thread-safety means in this context. [1 mark] (b) Write a thread-safe implementation of the constructor for Person. You must ensure no two instances of Person share the same accountId. You may create additional private fields, methods or inner classes in Person. [4 marks] (c) Write a thread-safe implementation of addFriends which uses fine-grained locking to atomically establish new bidirectional friendship links between people in the social network. [5 marks] (d) The developer wishes to serialize a copy of the graph of Person objects to disk. Without modifying the definition of Person, write an implementation of a non-thread-safe static method void SocialNet.save(Set everyone, ObjectOutputStream oos) which will write a single copy of all people in everyone to oos. Hint: oos.writeObject(obj) saves a copy of all objects reachable via references from obj and safely handles any cycles of references. [6 marks] (e) Give two reasons why it is useful to store a single copy of each Person object in Part (d). [2 marks] (f ) Describe in words the modifications you would need to make if there are multiple threads attempting to add friendship links to the social network concurrently with the execution of SocialNet.save.

(a) An application process receives information via a UDP packet over a wired Ethernet LAN connection. If the packet carries a source port number below 1024, under which conditions can the information be trusted? [6 marks] (b) What is a UDP-based amplification attack and why are similar attacks far less practical via TCP? [6 marks] (c) Name and briefly explain four techniques that the designers of C compilers and operating system kernels can implement to reduce the risk of stack-based buffer-overflow attacks. [4 marks] (d) How can an implementation of the C function strcmp() cause a vulnerability to a side-channel attack, and how can this be mitigated?

In order to include heuristics in your planning system you decide also to construct the planning graph for the problem in Part (a). Provide a description of the first two state levels and the first action level in the planning graph, and explain why each item is included in each level. [4 marks] (c) You now wish to add a further action level and a further state level to the graph. Explain what new items will be added to each new level and why. You need not mention items that are identical to those in earlier levels, only those that are added now for the first time. [3 marks] (d) Provide an example of how each of the five possible kinds of mutex link will appear in the graph constructed in Part (b) and Part (c). [5 marks] 2 CST.2016.4.3 2 Artificial Intelligence I (a) Provide a detailed description of the Iterative Deepening A? (IDA? ) algorithm. Your answer should include a clear statement of the algorithm in pseudo-code, and a general description of how it works. [8 marks] (b) Explain how the IDA? algorithm searches the following search tree. Numbers between nodes denote the cost of the path between those nodes, and numbers on the nodes denote the value of the heuristic for that node.

A program is required to draw an arc from (0, 1) to (1, 0) of the circle centred at the origin with unit radius. (a) One approach would be to draw a segment of the cubic Overhauser curve defined by (1, 0), (0, 1), (1, 0) and (0, 1). (i) Explain how a segment of an Overhauser curve in general can be represented as an Hermite cubic and so as a Bezier cubic. [4 marks] (ii) Derive the formula for the resulting Bezier curve, P(t). [3 marks] (iii) Calculate the coordinates of P( 1 2 ). How large is the error? [Hint: 2 1.414.] [3 marks] (b) Calculate revised control points for the Bezier curve so that it models the circular arc more accurately. [4 marks] (c) Describe in outline an alternative way of efficiently drawing the arc by calculating the pixels that lie on it directly. [6 marks] 4 Computer Graphics and Image Processing (a) Describe in detail the Cohen-Sutherland algorithm to clip a straight line segment against a rectangle. [8 marks] (b) Extend the algorithm from part (a) to clip a line against a three-dimensional viewing frustrum. [6 marks] (c) Describe how to clip a Bezier curve against a screen rectangle. [6 marks] 4 CST.2016.4.5 5 Databases (a) Define the concept of a functional dependency. [3 marks] (b) Suppose that relation R has m attributes. Give an upper bound on the number of functional dependencies that R could satisfy (including trivial dependencies). [3 marks] (c) Let R(A, B, C, D, E) be a relational scheme with the following dependencies. A C B, C D A E B, D C C E E D E B Which, if any, of these dependencies are redundant? [4 marks] (d) Suppose R(A, B, C) is a relational schema with functional dependency A B. What can you deduce about the results of A,B(R) A A,C(R)? Justify your answer. [3 marks] (e) Suppose R(A, B, C) is a relational schema. In addition, you know that the following is always true in any correct database instance. R = A,B(R) A A,C(R). What can you deduce about the dependencies between attributes A, B, and C? Prove any of your claims. [7 marks] 5 (TURN OVER) CST.2016.4.6 6 Databases This question deals with the variety of approaches to database design. (a) What is meant by the term on-line transaction processing (OLTP)? [3 marks] (b) What is meant by the term on-line analytic processing (OLAP)? [3 marks] (c) Compare and contrast the approach to schema design for OLTP and OLAP databases. [3 marks] (d) Compare OLAP with the so-called NoSQL approach to database design. [3 marks] (e) Give an example of a set of requirements whose solution would need to combine OLAP, OLTP and NoSQL. Describe an architecture integrating these elements in the system design. [8 marks] 7 Economics, Law and Ethics (a) Describe three ways in which information goods and services markets differ from the market for coal or for potatoes. [6 marks] (b) What are the usual effects of these differences on the structure of such markets? [4 marks] (c) You are the CEO of a car company considering adoption of Android as the platform for the entertainment, navigation and related systems in your next generation of vehicles. Should the app store be run by your company or by Google, and how should the safety case for apps be established? [5 marks] (d) You are an academic advising the Secretary of State for Transport on how vehicle app stores should be regulated. What would your advice be, both in terms of the UK public interest and the likely effects of EU regulation?

) Consider another small pseudo-random permutation, this time defined over the set of decimal digits {0, 1, 2, . . . , 9}, using modulo-10 addition instead of XOR (e.g., 7 3 = 0). (i) You have intercepted the message 100 with appended CBC-MAC block 4. The message represents an amount of money to be paid to you and can be of variable length. Use this information to generate a message that represents a much larger number, and provide a valid CBC-MAC digit, without knowing the pseudo-random permutation or key that the recipient will use to verify it. [4 marks] (ii) What mistake did the designer of the communication system attacked in part (b)(i) make (leaving aside the tiny block size), and how can this be fixed? [2 marks] 7 (TURN OVER) CST.2016.4.8 9 Security I (a) Briefly explain return-oriented programming: what kind of software vulnerability and countermeasure does this class of attacks target, how does it work, and under what conditions is it applicable? [6 marks] (b) Identify and fix a potential vulnerability in the following C function: [2 marks] #include void *bitmalloc(size_t bits) { return malloc((bits + 7)/8); } (c) On a Linux file server, you find this file: $ ls -l -rw----r-- 1 frank students 13593 May 31 14:55 question.tex User frank is a member of group students. (i) Based on the POSIX access-control settings shown, illustrate how the server's operating system will authorize access (if-statement pseudo code). [3 marks] (ii) What does an equivalent Windows NTFS access-control list look like? [3 marks] (iii) Does the Windows GUI for manipulating NTFS access-control lists allow users to enter this configuration? [2 marks] (d) Give an example of how POSIX file-system access control can be used to provide the equivalent of password protection for parts of the file space. In particular, show how user alice can set up a directory papers such that only those members of group committee (which includes alice) who know the secret string "SEL-4sB3" can read a file restricted.pdf. Show the setup either as a sequence of shell commands that alice can use to create it, or in the form of the metadata of the files and directories involved

What should a successful brand promise be able to do? A. Customize the product for each customer B. Clarify the company's processes C. Communicate an appealing benefit D. Convey a high-quality image 11. Which of the following is one way that freedom in a private enterprise system is limited by laws: A. Certain occupations must be licensed. B. All workers must take ability tests. C. Specific pay scales are regulated. D. Employees must register with the state. 12. During the month of July, sales at Handy's Shoe Mart totaled $2,500. The cost of the shoes was $1,025. The owner paid $866 for supplies, insurance, rent, and utilities during the month. The $609 left over represents the owner's A. net profit. B. gross profit. C. sales income. D. operating expenses. 13. Non-corporations are taxed as pass-through entities, meaning that A. profits and losses are claimed on owners' personal tax returns. B. they do not have to pay payroll taxes. C. their income tax rates are lower than those of corporations. D. they pay only state and local taxes. 14. Which of the following activities is an example of preparing before attempting to sell an idea: A. Explaining solutions to audience needs B. Determining the details of your idea C. Overcoming objections from the audience D. Affirming the audience's decision to "buy"

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Introduction to Hospitality

Authors: John R. Walker

6th edition

013281465X, 978-0132814652

More Books

Students also viewed these Marketing questions

Question

define what is meant by the term human resource management

Answered: 1 week ago