place-left (>>)

The place-left operator >> is a path operator that is used to specify a particular path or node to appear at a specific location (of a path p to be discovered) from left to right.

Syntax

The syntax of >> is as follows:

>> [index] node | >> [index] (path)

The place-left operator can be applied on both a node or path. When it applies to a path, parentheses must be used. index here must be a non-negative integer. The place-left operator must appear in front of a node or a path. Hence, sometimes it is also referred as prefix path operator in Cyclone.

Scope

The place-left operator >> can only be used in the goal section.

Semantics

A path s or node n is specified with >> i indicates that s or n must appear at location i in p. i here specifies an index value of p. It starts from 0 to n, where n is the path length. The following diagram illustrates this index value.

The left most node in p is represented as an index value of 0, and the right most node is represented as an index value of n, where n is the path length. When the index value i is omitted, the default value 0 is assumed.

Example

>>S1 && >>2(S3->S4)

Node S1 must appear at the beginning of a path and S3->S4 must appear at the 3rd node in a path. Thus, a path S1->S6->S3->S4->S5 meets the above path condition.

 


@2020-2022 Hao Wu. All rights reserved. Last update: January 29, 2022