indexing
	description: "Objects that may be compared according to a partial order relation"
	names: part_comparable, comparison

deferred class interface
	PART_COMPARABLE

feature -- Comparison

	infix "<" (other: like Current): BOOLEAN
			-- Is current object less than other?
		require
			other_exists: other /= void

	infix "<=" (other: like Current): BOOLEAN
			-- Is current object less than or equal to other?
		require
			other_exists: other /= void

	infix ">" (other: like Current): BOOLEAN
			-- Is current object greater than other?
		require
			other_exists: other /= void

	infix ">=" (other: like Current): BOOLEAN
			-- Is current object greater than or equal to other?
		require
			other_exists: other /= void
	
invariant

		-- from GENERAL
	reflexive_equality: standard_is_equal (Current);
	reflexive_conformance: conforms_to (Current);

end -- class PART_COMPARABLE