Files
secondo/Optimizer/tmp/TopRel.examples

295 lines
9.8 KiB
Plaintext
Raw Permalink Normal View History

2026-01-23 17:03:45 +08:00
Database: berlintest
Restore : No
Operator : =
Number : 1
Signature: int9m x int9m -> bool
Example : query [const int9m value 3] = [const int9m value 1]
Result : FALSE
Operator : =
Number : 2
Signature: cluster x cluster -> bool
Example : query [const cluster value ("example" 3 1)] = [const cluster value ("example" 3 1)]
Result : TRUE
Operator : =
Number : 3
Signature: predicategroup x predicategroup -> bool
Example : query [const predicategroup value ( ("c1" 1 2 6) ("c2" 3 4 5))] = [const predicategroup value ( ("c1" 1 2 6) ("c2" 3 4 5))]
Result : TRUE
Operator : +
Number : 1
Signature: cluster x int9m -> cluster
Example : query [const cluster value ("empty" )] + [const int9m value 1]
Result : (cluster ("empty" 1))
Remark : adds a matrix into a cluster
Operator : -
Number : 1
Signature: cluster x cluster -> cluster
Example : query [const cluster value ("c1" 1 2 3)] - [const cluster value ("c1" 2)]
Result : (cluster ("c1" 1 3))
Remark : computes the (set-) difference of the included matrices
Operator : -
Number : 2
Signature: cluster x int9m -> cluster
Example : query [const cluster value ("c1" 1 2 3)] - [const int9m value 2]
Result : (cluster ("c1" 1 3))
Operator : clustername_of
Number : 1
Signature: predicategroup x int9m -> string
Example : query clustername_of([const predicategroup value ( ("c1" 1 2 6) ("c2" 3 4 5))] , [const int9m value 2])
Result : "c1"
Remark : returns the name of the cluster containing the given matrix withn the group
Operator : clusterof
Number : 1
Signature: predicategroup x int9m -> cluster
Example : query clusterof([const predicategroup value ( ("c1" 1 2 6) ("c2" 3 4 5))] , [const int9m value 2])
Result : (cluster ("c1" 1 2 6))
Remark : returns the cluster containing the given matrix within this group
Operator : contains
Number : 1
Signature: cluster x int9m -> bool
Example : query [const cluster value ("c1" 4 511 2)] contains [const int9m value 16]
Result : FALSE
Remark : checks if the matrix is part of the cluster
Operator : createcluster
Number : 1
Signature: string x string -> cluster
Example : query createcluster("test","ii & !ee & ib & bi & !bb")
Result : (cluster ("test" 416 418 420 422 424 426 428 430 480 482 484 486 488 490 492 494))
Remark : creates a cluster from the given name and matrices
Operator : createcluster
Number : 2
Signature: string x text -> cluster
Example : query createcluster("test",'ii & !ee & ib & bi & !bb')
Result : (cluster ("test" 416 418 420 422 424 426 428 430 480 482 484 486 488 490 492 494))
Remark : creates a cluster from the given name and matrices
Operator : createpgroup
Number : 1
Signature: cluster x cluster x ... -> predicategroup
Example : query createpgroup([const cluster value ("c1" 1 2)], [const cluster value ("c2" 6 7)])
Result : (predicategroup ( ("c1" 1 2) ("c2" 6 7)))
Remark : creates a predicate group from the clusters, clusters must be disjoint
Operator : createprioritypgroup
Number : 1
Signature: cluster x cluster x ... -> predicategroup
Example : query createprioritypgroup([const cluster value ("c1" 1 2 6 )], [const cluster value ("c2" 6 7)])
Result : (predicategroup ( ("c1" 1 2 6) ("c2" 7)))
Remark : creates a group from the clusters, matrices of overlapping clusters are assigned to the first cluster in the list
Operator : createvalidpgroup
Number : 1
Signature: cluster x cluster x ... -> predicategroup
Example : query createvalidpgroup( [const cluster value ("valid" 1 2 3 4)], [const cluster value ("c1" 1 2 6)], [const cluster value ("c2" 4 5 6)])
Result : (predicategroup ( ("c1" 1 2) ("c2" 4)))
Remark : creates a predicategroup from the given clusters restricted to the matrices of the first cluster
Operator : disjoint
Number : 1
Signature: cluster x cluster -> bool
Example : query [const cluster value ("c1" 1 2 3)] disjoint [const cluster value ("c2" 6 7 8)]
Result : TRUE
Remark : checks if the matrices sets within the clusters are disjoint
Operator : intersection
Number : 1
Signature: int9m x int9m -> int9m
Example : query number_of(intersection([const int9m value 6] , [const int9m value 5] ))
Result : (int 4)
Remark : only such intersections which are in both arguments are part of the result
Operator : intersection
Number : 2
Signature: cluster x cluster -> cluster
Example : query intersection([const cluster value ("c1" 1 2 3)] , [const cluster value ("c2" 2 5 8)])
Result : (cluster ("c1" 2))
Remark : intersection betweent the matrices sets, the name is taken from the first cluster
Operator : invert
Number : 1
Signature: int9m -> int9M
Example : query number_of(invert([const int9m value 511]))
Result : (int 0)
Remark : inverts the content of the matrix
Operator : invert
Number : 2
Signature: cluster -> cluster
Example : query invert([const cluster value ("c1" "!(ii & ib & ie & bi & bb & be & ei & eb & ee)")])
Result : (cluster ("c1" 511))
Remark : inverts the content of the cluster
Operator : isComplete
Number : 1
Signature: predicategroup -> bool
Example : query isComplete([const predicategroup value (("c1" "!ee")("c2" "ee"))])
Result : TRUE
Remark : Checks if the group covers all possible matrices
Operator : multiintersection
Number : 1
Signature: int9m x int9m x ... -> int9m
Example : query number_of(multiintersection( [const int9m value 511], [const int9m value 3], [const int9m value 5]))
Result : (int 1)
Remark : same as arg_1 intersection arg_2 intersection ... arg_n
Operator : multiintersection
Number : 2
Signature: cluster x cluster x ... -> cluster
Example : query multiintersection([const cluster value ("c1" "!ee")], [const cluster value ("c2" "!bb")], [const cluster value("c3" "ii & ib & ie & bi & be & ei & eb")])
Result : (cluster ("c1" 494))
Remark : same as arg_1 intersection arg_2 intersection ... arg_n
Operator : name_of
Number : 1
Signature: cluster -> string
Example : query name_of([const cluster value ("c1" "!ii")])
Result : (string "c1")
Remark : projection to the name of this cluster
Operator : number_of
Number : 1
Signature: int9m -> int
Example : query number_of([const int9m value 3])
Result : (int 3)
Remark : interpretation of a matrix as bitstring
Operator : pwdisjoint
Number : 1
Signature: cluster x cluster x ... -> bool
Example : query pwdisjoint([const cluster value ("c1" "!ee")], [const cluster value ("c2" "ee")],[const cluster value("c3" "ii")])
Result : FALSE
Remark : checks if the arguments are pairwise disjoint
Operator : relax
Number : 1
Signature: cluster x string -> cluster
Example : query relax([const cluster value ("c1" 511)]," ee & ei & ii & bi & bb & ib")
Result : (cluster ("c1" 437 439 445 447 501 503 509 511))
Remark : extends the cluster to all matrices fulfilling the given condition
Operator : relax
Number : 2
Signature: cluster x text -> cluster
Example : query relax([const cluster value ("c1" 511)],[const text value ' ee & ei & ii & bi & bb & ib'])
Result : (cluster ("c1" 437 439 445 447 501 503 509 511))
Remark : extends the cluster to all matrices fulfilling the given condition
Operator : renamecluster
Number : 1
Signature: cluster x string -> cluster
Example : query [const cluster value ("c1" 511)] renamecluster["c2"]
Result : (cluster ("c2" 511))
Remark : gives the cluster a new name
Operator : restrict
Number : 1
Signature: cluster x string -> cluster
Example : query restrict([const cluster value ("c1" 511 510)] , "ee" )
Result : (cluster ("c1" 511))
Remark : Removes all matrices from the cluster which not fulfil the given condition
Operator : restrict
Number : 2
Signature: cluster x text -> cluster
Example : query restrict([const cluster value ("c1" 511 510)] , [const text value 'ee'] )
Result : (cluster ("c1" 511))
Remark : Removes all matrices from the cluster which not fulfil the given condition
Operator : size
Number : 1
Signature: cluster -> int
Example : query size([const cluster value ("c1" 500 501)])
Result : (int 2)
Remark : the number of contained matrices
Operator : size
Number : 2
Signature: predicategroup -> int
Example : query size([const predicategroup value (("c1" 45))])
Result : (int 2)
Remark : the number of contained clusters (+1 for the unspecified cluster)
Operator : transpose
Number : 1
Signature: int9m -> int9m
Example : query number_of(transpose([const int9m value 200]))
Result : (int 38)
Remark : swaps rows and columns of the matrix
Operator : transpose
Number : 2
Signature: cluster x string -> cluster
Example : query transpose([const cluster value ("c" 200)],"c2")
Result : (cluster ("c2" 38))
Remark : transposes all contained matrices
Operator : union
Number : 1
Signature: int9m x int9m -> int9m
Example : query number_of([const int9m value 1] union [const int9m value 4])
Result : (int 5)
Remark : the reuslt contains the intersections of both arguments
Operator : union
Number : 2
Signature: cluster x cluster -> cluster
Example : query [const cluster value ("c1" 1)] union [const cluster value ("c2" 2)]
Result : (cluster ("c1" 1 2))
Remark : union of the matrices sets, the name is taken from the first argument
Operator : unspecified
Number : 1
Signature: predicategroup -> cluster
Example : query unspecified([const predicategroup value (("c1" "true"))])
Result : (cluster ("unspecified"))
Remark : the cluster containing all non-assigned matrices
Operator : stdpgroup
Number : 1
Signature: -> predicategroup
Example : query stdpgroup()
Result : file
Remark : Computes a default predicate group
Operator : getcluster
Number : 1
Signature: predicategroup x string -> cluster
Example : query getcluster(stdpgroup(),"equal")
Result : (cluster ("equal" 0 1 16 17 256 257 272 273))
Remark : extract the cluster with given name from a predicategroup