Journal of Formalized Reasoning (Nov 2017)

A Formally Proved, Complete Algorithm for Path Resolution with Symbolic Links

  • Ran Chen,
  • Martin Clochard,
  • Claude Marché

DOI
https://doi.org/10.6092/issn.1972-5787/6767
Journal volume & issue
Vol. 10, no. 1
pp. 51 – 66

Abstract

Read online

In the context of file systems like those of Unix, path resolution is the operation that given a character string denoting an access path, determines the target object (a file, a directory, etc.) designated by this path. This operation is not trivial because of the presence of symbolic links. Indeed, the presence of such links may induce infinite loops. We consider a path resolution algorithm that always terminate, detecting if it enters an infinite loop and reports a resolution failure in such a case. We propose a formal specification of path resolution and we formally prove that our algorithm terminates on any input, and is correct and complete with respect to our formal specification.

Keywords