5824055
Understanding SPKI/SDSI using first-order logic
SPKI/SDSI is a language for expressing distributed access control policy, derived from SPKI and SDSI. We provide a first-order logic (FOL) semantics for SDSI, and show that it has several advantages over previous semantics. For example, the FOL semantics is easily extended to additional policy concepts and gives meaning to a larger class of access control and other policy analysis queries. We prove that the FOL semantics is equivalent to the string rewriting semantics used by SDSI designers, for all queries associated with the rewriting semantics. We also provide a FOL semantics for SPKI/SDSI and use it to analyze the design of SPKI/SDSI. This reveals some problems. For example, the standard proof procedure in RFC 2693 is semantically incomplete. In addition, as noted before by other authors, authorization tags in SPKI/SDSI are algorithmically problematic, making a complete proof procedure unlikely. We compare SPKI/SDSI with RT1C, which is a language in the RTRole-based Trust-management framework that can be viewed as an extension of SDSI. The constraint feature of RT1C, based on Constraint Datalog, provides an alternative mechanism that is expressively similar to SPKI/SDSI tags, semantically natural, and algorithmically tractable.
215952437
Beyond proof-of-compliance: security analysis in trust management
Trust management is a form of distributed access control that allows one principal to delegate some access decisions to other principals. While the use of delegation greatly enhances flexibility an...
16397953
Parametricity and Variants of Girard's J Operator
Abstract The Girard–Reynolds polymorphic λ -calculus is generally regarded as a calculus of parametric polymorphism in which all well-formed terms are strongly normalizing with respect to β -reductions. Girard demonstrated that the addition of a simple “non-parametric” operation, J , to the calculus allows the definition of a non-normalizing term. Since the type of J is not inhabited by any closed term, one might suspect that this may play a role in defining a non-normalizing term using it. We demonstrate that this is not the case by giving a simple variant, J′ , of J whose type is otherwise inhabited and which causes normalization to fail. It appears that impredictivity is essential to the argument; predictive variants of the polymorphic λ -calculus admit non-parametric operations without sacrificing normalization.
18708753
Unification and ML-Type Reconstruction
We study the complexity of type reconstruction for a core fragment of ML with lambda abstraction, function application, and the polymorphic let declaration. We derive exponential upper and lower bounds on recognizing the typable core ML expressions. Our primary technical tool is uniication of succinctly represented type expressions. After observing that core ML expressions, of size n, can be typed in DTIME(2 n), we exhibit two diierent families of programs whose principal types grow exponentially. We show how to exploit the expressiveness of the let-polymorphism in these constructions to derive lower bounds on deciding typability: one leads naturally to NP-hardness and the other to DTIME(2 n k)-hardness for each integer k 1. Our generic simulation of any exponential time Turing Machine by ML type reconstruction may be viewed as a nonstandard way of computing with types. Our worst-case lower bounds stand in contrast to practical experience, which suggests that commonly used algorithms for type reconstruction do not slow compilation substantially.
9031501
Design of a role-based trust-management framework
We introduce the RT framework, a family of role-based trust management languages for representing policies and credentials in distributed authorization. RT combines the strengths of role-based access control and trust-management systems and is especially suitable for attribute-based access control. Using a few simple credential forms, RT provides localized authority over roles, delegation in role definition, linked roles, and parameterized roles. RT also introduces manifold roles, which can be used to express threshold and separation-of-duty policies, and delegation of role activations. We formally define the semantics of credentials in the RT framework by presenting a translation from credentials to Datalog rules. This translation also shows that this semantics is algorithmically tractable.
3062362
Managing Digital Rights using Linear Logic
Digital music players protect songs by enforcing licenses that convey specific rights for individual songs or groups of songs. For licenses specified in industry, we show that deciding whether a license authorizes a sequence of actions is NP-complete, with a restricted version of the problem solvable efficiently using a reduction to maximum network flow. The authorization algorithm used in industry is online, deciding which rights to exercise as actions occur, but we show that all online algorithms are necessarily non-monotonic: each allows actions under one license that it does not allow under a more flexible license. In one approach to achieving monotonicity, we exhibit the unique maximal set of licenses on which there exists a monotonic online algorithm. This set of well-behaved licenses induces an approximation algorithm by replacing each license with a well-behaved license. In a second approach, we consider allowing the player to revise its past decisions about which rights to exercise while still ensuring compliance with the license. We propose an efficient algorithm based on linear logic, with linear negation used to revise past decisions. We prove our algorithm monotonic, live, and sound with respect to the semantics of licenses
8077305
k-Link Shortest Paths in Weighted Subdivisions
We study the shortest path problem in weighted polygonal subdivisions of the plane, with the additional constraint of an upper bound, k, on the number of links (segments) in the path. We prove structural properties of optimal paths and utilize these results to obtain approximation algorithms that yield a path having O(k) links and weighted length at most (1+e) times the weighted length of an optimal k-link path, for any fixed e>0. Some of our results make use of a new solution for the 1-link case, based on computing optimal solutions for a special sum-of-fractionals (SOF) problem. We have implemented a system, based on the CORE library, for computing optimal 1-link paths; we experimentally compare our new solution with a previous method for 1-link optimal paths based on a prune-and-search scheme.
6478208
Chemistry in Bioinformatics
AbstractChemical information is now seen as critical for most areas of life sciences. But unlike Bioinformatics, where data is openly available and freely re-usable, most chemical information is closed and cannot be re-distributed without permission. This has led to a failure to adopt modern informatics and software techniques and therefore paucity of chemistry in bioinformatics. New technology, however, offers the hope of making chemical data (compounds and properties) free during the authoring process. We argue that the technology is already available; we require a collective agreement to enhance publication protocols.
1413183
Efficient Collision Detection Using Bounding Volume Hierarchies of k-DOPs
Collision detection is of paramount importance for many applications in computer graphics and visualization. Typically, the input to a collision detection algorithm is a large number of geometric objects comprising an environment, together with a set of objects moving within the environment. In addition to determining accurately the contacts that occur between pairs of objects, one needs also to do so at real-time rates. Applications such as haptic force feedback can require over 1000 collision queries per second. We develop and analyze a method, based on bounding-volume hierarchies, for efficient collision detection for objects moving within highly complex environments. Our choice of bounding volume is to use a discrete orientation polytope (k-DOP), a convex polytope whose facets are determined by halfspaces whose outward normals come from a small fixed set of k orientations. We compare a variety of methods for constructing hierarchies (BV-trees) of bounding k-DOPs. Further, we propose algorithms for maintaining an effective BV-tree of k-DOPs for moving objects, as they rotate, and for performing fast collision detection using BV-trees of the moving objects and of the environment. Our algorithms have been implemented and tested. We provide experimental evidence showing that our approach yields substantially faster collision detection than previous methods.
7524589
Sweeping simple polygons with a chain of guards
We consider the problem of locating a continuously-moving target using a group of guards moving inside a simple polygon. Our guards always form a simple polygonal chain within the polygon such that consecutive guards along the chain are mutually visible. We develop algorithms that sweep such a chain of guards through a polygon to locate the target. Our two main results are the following: 1. an algorithm to compute the minimum number r∗ of guards needed to sweep an n-vertex polygon that runs in O(n) time and uses O(n) working space, and 2. a faster algorithm, using O(n log n) time and O(n) space, to compute an integer r such that max(r − 16, 2) ≤ r∗ ≤ r and P can be swept with a chain of r guards. We develop two other techniques to approximate r∗. Using O(n) time and space, we show how to sweep the polygon using at most r∗ +2 guards. We also show that any polygon can be swept by a number of guards equal to two more than the link radius of the polygon. As a key component of our exact algorithm, we introduce the notion of the link diagram of a polygon, which encodes the link distance between all pairs of points on the boundary of the polygon. We prove that the link diagram has size Θ(n) and can be constructed in Θ(n) time. We also show link diagram provides a data structure for optimal two-point link-distance queries, matching an earlier result of Arkin et al. As a key component of our O(n log n)-time approximation algorithm, we introduce the notion of the “link width” of a polygon, which may have independent interest, as it captures important structural properties of simple polygons. Computer Science Dept., Stanford University, 353 Serra Mall, Stanford CA 94305. Email: alon@cs.stanford.edu. Supported by a Rothschild Fellowship and by NSF research grant CCR-96-23851. Computer Science Dept., Stanford University, 353 Serra Mall, Stanford CA 94305. Email: guibas@cs.stanford.edu. Partially supported by DARPA grant DAAE07-98-C-L027 and by ARO MURI grant DAAH04-96-1-007. School of Mathematical Sciences, Tel Aviv University, Tel Aviv 69978, Israel. Email: sariel@math.tau.ac.il. Computer Science Dept., Stanford University, 353 Serra Mall, Stanford CA 94305. Email: dlin@cs.stanford.edu. Supported by DARPA grant DAAE07-98-C-L027 and by ARO MURI grant DAAH04-96-1-007. Dept. Applied Math, University at Stony Brook, Stony Brook, NY 11794-3600. Email: jsbm@ams.sunysb.edu. Partially supported by NSF (CCR-9732220), and grants from Hughes Research Labs, ISX Corporation, Seagull Technologies, NASA, and Sun Microsystems. Computer Science Dept., Stanford University, 353 Serra Mall, Stanford CA 94305. Email: murali@cs.stanford.edu. Supported by DARPA grant DAAE07-98-C-L027.
10071461
Separation and approximation of polyhedral objects
Given a family of disjoint polygons P<subscrpt>1</subscrpt>, P<subscrpt>2</subscrpt>,…, P<subscrpt><italic>k</italic></subscrpt> in the plane, and an integer parameter <italic>m</italic>, it is <italic>NP</italic>-complete to decide if the <italic>P<subscrpt>i</subscrpt></italic>'s can be <italic>separated</italic> by a polygonal family consisting of <italic>m</italic> edges, that is, if there exist polygons <italic>R</italic><subscrpt>1</subscrpt>, <italic>R</italic><subscrpt>2</subscrpt>,…, <italic>R<subscrpt>k</subscrpt></italic> with pairwise-disjoint boundaries such that <italic>P<subscrpt>i</subscrpt></italic> *** <italic>R<subscrpt>i</subscrpt></italic> and &Sgr;|<italic>R<subscrpt>i</subscrpt></italic>| ≤ <italic>m</italic>. In three dimensions, the problem  of separating even two <italic>nested convex</italic> polyhedra by a <italic>k</italic>-facet polyhedron is <italic>NP</italic>-complete. Many other extensions and generalizations of the polyhedral separation problem, either to families of polyhedra or to higher dimensions, are also intractable.
In this paper, we present efficient approximation algorithms for constructing separating families of near-optimal size. Our main results are as follows. In two dimensions, we give an <italic>O</italic>(<italic>n</italic> log <italic>n</italic>) time algorithm for constructing a separating family whose size is within a constant factor of an optimal separating family; <italic>n</italic> is the number of edges in the input family of polygons. In three dimensions, we can separate a convex   polyhedron from a nonconvex polyhedron with a convex polyhedral surface whose <italic>facet-complexity</italic> is <italic>O</italic>(log <italic>n</italic>, times the optimal, where <italic>n</italic> = |<italic>P</italic>|+|<italic>Q</italic>| is the complexity of the input polyhedra. Our algorithm runs in <italic>O</italic>(<italic>n</italic><supscrpt>4</supscrpt>) time, but improves to <italic>O</italic> (<italic>n</italic><supscrpt>3</supscrpt>) time if the two polyhedra are nested and convex.
Our algorithm for separating a convex polyhedron from a nonconvex polyhedron extends to higher dimensions. In <italic>d</italic> dimensions, for <italic>d</italic> ≥ 4, the facet-complexity of the approximation polyhedron is <italic>O</italic>(<italic>d</italic> log   <italic>n</italic>) times the optimal, and the algorithm runs in <italic>O</italic>(<italic>n<supscrpt>d+1</subscrpt></italic>)time. Finally, we also obtain results on separating sets of points, a family of convex polyhedra, and separation by non-polyhedral surfaces, such as spherical patches.