Fully-funded PhD scholarship in parallel programming and dependent-types

The school of Computer Science at the University of St Andrews has a fully-funded scholarship available working in the Programming Languages Research Group with Dr Christopher Brown. Applications must be received by 1 March 2025.

Background

Algorithmic skeletons provide a convenient and high-level approach to writing efficient parallel software by leveraging common patterns of parallel behaviours. A skeleton library presents the programmer with a library of high-level parallel interfaces, abstracting away the low-level complexities of manually handling concurrency primitives, e.g. locking, synchronisation and thread creation. Skeletons give an excellent compromise between ease of programming and the ability to generate highly efficient parallel software. A wide range of skeletons have been developed for several different languages, including Fastflow, TBB, PPL and OpenMP. However, despite the proliferation of skeleton libraries, there is little support for an increasingly popular class of programming languages equipped with dependent types.

 

Dependently-typed programming languages address the problem of program safety by ensuring that code conforms to its specification. This is achieved by permitting types to depend on values, thereby allowing programmers to express logical properties, and proof, as intrinsic parts of their programs. This conformance is checked at compile-time. This interest in dependent-types has resulted in a number of functional languages such as pi-forall, Agda, Idris and Coq. However, despite these developments in types, these dependently-typed languages still lack a parallel implementation, making development of safe parallel programs impossible.

 

This project will explore approaches to designing and implementing a dependently-typed parallel programming language. These approaches will consider the technical challenges, but also balancing those with the high-level usability that skeletons bring and the performance expectations of a performant system. As part of this exploration, use-cases will also need to be developed, and the scientific evaluation of the performance of the system will need to be carried out.

Topics of Interest

This project is largely exploratory in nature, and may take several different approaches and directions, including (but not limited to):

  • Extending an existing dependently-typed language, such as Idris, with new concurrency primitives.
  • Designing and implementing an efficient parallel runtime system as a backend to the language.
  • Building on top of these primitives to provide dependently-typed concurrency behaviours, such as synchronisation points, channel behaviours, etc.
  • To design and implement a set of dependently-typed algorithmic skeletons such as farms and pipelines.
  • To explore and identify new skeletons that arise from writing dependently-typed programs.
  • To use dependent-types to encode safety and soundness properties and reason about these properties in a formal way.

The Scholarship

We have one fully-funded scholarship available, starting in September 2025, which will be awarded to competitively to the best applicant. The scholarship covers all tuition fees (irrespective of country of origin) and comes with a stipend valued at £19,705 per annum. More details can be found here: https://blogs.cs.st-andrews.ac.uk/csblog/2024/10/24/phd-studentships-available-for-2025-entry/

International applications are welcome. We especially encourage female applicants and underrepresented minorities to apply. The School of Computer Science was awarded the Athena SWAN Silver award for its sustained progression in advancing equality and representation, and we welcome applications from those suitably qualified from all genders, all races, ethnicities and nationalities, LGBT+, all or no religion, all social class backgrounds, and all family structures to apply for our postgraduate research programmes.

To Apply

Informal enquiries can be directed to Chris. Full instructions for formal applications can be found at https://www.st-andrews.ac.uk/computer-science/prospective/pgr/how-to-apply/

The deadline for applications is 1 March 2025.

 

Week 1 Social Events

The following social events are being held in the School this week in the Jack Cole coffee area:-

  • Monday 16 September – 17:00 – 18:00 – MSc and MSci welcome reception (TODAY)
  • Wednesday 18 September – 16:00 – 17:00 – Honours (Junior & Senior) welcome reception
  • Friday 20 September – 17:00 – 18:00 – Sub-honours (students on first and second years of CS programmes) social event

Drinks 🍷 and snacks 🍰 available at all events, so please come along and join us!

STACS Welcome BBQ 🍔

If you are a new Undergraduate or Postgraduate Taught student to the School of Computer Science, you are invited to the STACS Welcome BBQ outside the Jack Cole Coffee Area on Friday 13th September 5.30pm-7.30pm.

The usual BBQ favourites will be available from the grill and refreshments will be provided. We look forward to seeing you there!

December Graduation Reception: Tuesday 3rd December

The School of Computer Science will host a graduation reception on Tuesday 3rd December in the Jack Cole building, between 12.00 and 14.00. Graduating students and their guests are invited to the School to celebrate with a glass of bubbly and a cream cake. Computer Science degrees will be conferred in a morning ceremony in the Younger Hall. Family and friends who can’t make it on the day can watch a live broadcast of graduation. Graduation receptions have been held in the school from 2010.

MSc student participates in CERN School of Computing and the ACM Europe Summer School

MSc student Saad Memon participated in the CERN School of Computing 2019 and the ACM Europe Summer School 2019 in HPC Architectures for AI and Dedicated Applications.

CERN School of Computing (CSC 2019) involved a series of lectures and practical exercises over a two-week period. The Summer School is open to postgraduate students and research workers at CERN or at external institutes. Participants are generally attracted by the advanced topics that are taught. A limited number of places are available and all applications go through a selection process. Further details can be found on their school website.

The ACM summer school is open to outstanding MSc students and senior undergraduate students, this year successful participants spent a week in Barcelona, attending formal lectures during the mornings and practical sessions in the afternoons. Prof. Silvio Micali, Turing Award laureate and MIT Professor, gave a Turing lecture on “ALGORAND. The distributed Ledger for the Borderless Economy”.

Group picture of ACM Particpants


Saad receiving certificate from Fabrizio Gagliardi, Barcelona Supercomputing Center, Spain

Saad completed his MSc in Dependable Software Systems here in the School.

Best paper finalist award for Xingzhi Yue and Neofytos Dimitriou

A paper describing the work of our MSc student Xingzhi Yue and PhD student Neofytos Dimitriou, supervised by Oggie Arandjelovic and in collaboration with the School of Medicine, gets the best paper finalist award at the latest International Conference on Bioinformatics and Computational Biology (BICOB 2019). The key contribution of the work is a novel deep learning based algorithm for the analysis of extremely large pathology image slides, capable of automating and improving colorectal cancer prognosis.

December Graduation 2018

Congratulations to the Masters Class of 2018, and PhD students Dr Daniel Rough and Dr Adeola Fabola who graduated last week. The School also celebrated the Installation of Professor Adam Barker. Students and guests were invited to a reception in Computer Science after the ceremony to celebrate their achievement and reflect on their time in the School.

Our graduates move on to a wide variety of interesting and challenging employment and further study opportunities, and we wish them all well with their future careers.

DLS: Scalable Intelligent Systems by 2025 (Carl Hewitt)

Venue: The Old Course Hotel (Hall of Champions)

Timetable:

9:30 Lecture 1
10:30 Break with Coffee
11:15 Lecture 2
12:15 Break for Lunch (not provided)
14:15 Lecture 3
15:15 Discussion

Lecture 1: Introduction to Scalable Intelligent Systems

Lecture 2: Foundations for Scalable Intelligent Systems

Lecture 3: Implications of Scalable Intelligent Systems

Speaker Bio:

Professor Carl Hewitt is the creator (together with his students and other colleagues) of the Actor Model of computation, which influenced the development of the Scheme programming language and the π calculus, and inspired several other systems and programming languages. The Actor Model is in widespread industrial use including eBay, Microsoft, and Twitter. For his doctoral thesis, he designed Planner, the first programming language based on pattern-invoked procedural plans.

Professor Hewitt’s recent research centers on the area of Inconsistency Robustness, i.e., system performance in the face of continual, pervasive inconsistencies (a shift from the previously dominant paradigms of inconsistency denial and inconsistency elimination, i.e., to sweep inconsistencies under the rug). ActorScript and the Actor Model on which it is based can play an important role in the implementation of more inconsistency-robust information systems. Hewitt is an advocate in the emerging campaign against mandatory installation of backdoors in the Internet of Things.

Hewitt is Board Chair of iRobust™, an international scientific society for the promotion of the field of Inconsistency Robustness. He is also Board Chair of Standard IoT™, an international standards organization for the Internet of Things, which is using the Actor Model to unify and generalize emerging standards for IoT. He has been a Visiting Professor at Stanford University and Keio University and is Emeritus in the EECS department at MIT.

Abstract:

A project to build the technology stack outlined in these lectures can bring Scalable Intelligent Systems to fruition by 2025. Scalable Intelligent Systems have the following characteristics:

  • Interactively acquire information from video, Web pages, hologlasses, online data bases, sensors, articles, human speech and gestures, etc.
  • Real-time integration of massive pervasively inconsistent information
  • Scalability in all important dimensions meaning that there are no hard barriers to continual improvement in the above areas
  • Close human collaboration with hologlasses for secure mobile interaction. Computers alone cannot implement the above capabilities
  • No closed-form algorithmic solution is possible to implement the above capabilities

Technology stack for Scalable Intelligent Systems is outlined below:

  • Experiences Hologlasses: Collaboration, Gestures, Animations, Video
  • Matrix Discourse, Rhetoric, and Narration
  • Citadels No single point of failure
  • Massive Inconsistency Robust Ontology Propositions, Goals, Plans, Descriptions, Statistics, Narratives
  • Actor Services Hardware and Software
  • Actor Many Cores Non-sequential, Every-word-tagged, Faraday cage Crypto, Stacked Carbon Nanotube

For example, pain management could greatly benefit from Scalable Intelligent Systems. Complexities of dealing with pain have led to the current opioid crisis. According to Eric Rodgers, PhD., director of the VA’s Office of Evidence Based Practice:

“The use of opioids has changed tremendously since the 1990s, when we first started formulating a plan for guidelines. The concept then was that opioid therapy was an underused strategy for helping our patients and we were trying to get our providers to use this type of therapy more. But as time went on, we became more aware of the harms of opioid therapy and the development of pill mills. The problems got worse.

It’s now become routine for providers to check the state databases to see if there’s multi-sourcing — getting prescriptions from other providers. Providers are also now supposed to use urine drug screenings and, if there are unusual results, to do a confirmation. [For every death from an opioid overdose] there are 10 people who have a problem with opioid use disorder or addiction. And for every addicted person, we have another 10 who are misusing their medication.”

Pain management requires much more than just prescribing opioids, which are often critical for short-term and less often longer-term use. [Coker 2015; Friedberg 2012; Holt 2017; Marchant 2017; McKinney 2015; Spiegel 2018; Tedesco, et. al. 2017; White 2017] Organizational aspects play an important role in pain management. [Fagerhaugh and Strauss 1977]

Event details

  • When: 13th November 2018 09:30 - 15:30
  • Series: Distinguished Lectures Series
  • Format: Distinguished lecture

MSc and Honours receptions 2018

After a busy week of orientation, advising and module talks, MSc and Honours students are pictured socialising during their welcome receptions on Tuesday and Thursday evening last week. The popular and lively events highlight the friendly student community within the School and provide a chance to chat to staff and students before a semester of hard work begins.

Images courtesy of Xu Zhu and Sylvia Laesecke