Files
secondo/Algebras/ChessB/ChessB.examples
2026-01-23 17:03:45 +08:00

569 lines
14 KiB
Plaintext

Database: chessBtest
Restore : No
Operator : <
Number : 1
Signature: field x field -> bool
Example : query field("a1") < field("a2")
Result : TRUE
Operator : <
Number : 2
Signature: material x material -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[28] pieces < wjc feed filter[.No = 2] extract[Elem] getposition[1] pieces
Result : FALSE
Operator : <
Number : 3
Signature: position x position -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[10] < wjc feed filter[.No = 2] extract[Elem] getposition[1]
Result : TRUE
Operator : =
Number : 1
Signature: field x field -> bool
Example : query field("a1") = field("a1")
Result : TRUE
Operator : =
Number : 2
Signature: material x material -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[1] pieces = wjc feed filter[.No = 2] extract[Elem] getposition[1] pieces
Result : TRUE
Operator : =
Number : 3
Signature: position x position -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[1] = wjc feed filter[.No = 2] extract[Elem] getposition[1]
Result : TRUE
Operator : >
Number : 1
Signature: field x field -> bool
Example : query field("a1") > field("d6")
Result : FALSE
Operator : >
Number : 2
Signature: material x material -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[28] pieces > wjc feed filter[.No = 2] extract[Elem] getposition[1] pieces
Result : FALSE
Operator : >
Number : 3
Signature: position x position -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[10] > wjc feed filter[.No = 2] extract[Elem] getposition[1]
Result : FALSE
Operator : ~
Number : 1
Signature: material x material -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] pieces ~ wjc feed filter[.No = 2] extract[Elem] getposition[6] pieces
Result : TRUE
Operator : ~
Number : 2
Signature: position x position -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] pieces ~ wjc feed filter[.No = 2] extract[Elem] getposition[6] pieces
Result : TRUE
Operator : above
Number : 1
Signature: field x field -> bool
Example : query field("a2") above field("a1")
Result : TRUE
Operator : agent
Number : 1
Signature: chessmove -> piece
Example : query wjc feed filter[.No = 5] extract[Elem] getmove[7] agent
Result : (piece "Knight")
Operator : apply_ply
Number : 1
Signature: position x chessmove -> position
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] apply_ply[wjc feed filter[.No = 2] extract[Elem] getmove[7] ]
Result : file
Operator : attackcount
Number : 1
Signature: position x field -> int
Example : query wjc feed filter[.No = 4] extract[Elem] getposition[28] attackcount[field("a4")]
Result : 1
Operator : attackedby
Number : 1
Signature: position x piece x piece -> bool
Example : query wjc feed filter[.No = 1] extract[Elem] getposition[28] piece("queen") attackedby[piece("Queen")]
Result : crashes
Remark : Bord iterator will used outside the board
Operator : attackedby
Number : 2
Signature: position x field x piece -> bool
Example : query wjc feed filter[.No = 5] extract[Elem] getposition[12] field("d5") attackedby[piece("Pawn")]
Result : TRUE
Operator : attackedfrom
Number : 1
Signature: position x piece x field -> bool
Example : query wjc feed filter[.No = 5] extract[Elem] getposition[12] piece("pawn") attackedfrom[field("c4")]
Result : FALSE
Operator : attackedfrom
Number : 2
Signature: position x field x field -> bool
Example : query wjc feed filter[.No = 1] extract[Elem] getposition[28] field("c4") attackedfrom[field("d5")]
Result : TRUE
Operator : below
Number : 1
Signature: field x field -> bool
Example : query field("a1") below field("a2")
Result : TRUE
Operator : captured
Number : 1
Signature: chessmove -> piece
Example : query wjc feed filter[.No = 5] extract[Elem] getmove[7] captured
Result : (piece "none")
Operator : captures
Number : 1
Signature: chessmove -> bool
Example : query wjc feed filter[.No = 5] extract[Elem] getmove[7] captures
Result : FALSE
Operator : check
Number : 1
Signature: chessmove -> bool
Example : query wjc feed filter[.No = 5] extract[Elem] getmove[7] check
Result : FALSE
Operator : checkmate
Number : 1
Signature: position -> bool
Example : query checkmate(wjc feed filter[.No = 42] extract[Elem] getposition[70])
Result : TRUE
Operator : east
Number : 1
Signature: field -> field
Example : query east( field("a1") )
Result : (field "b1")
Operator : endfield
Number : 1
Signature: chessmove -> field
Example : query endfield(wjc feed filter[.No = 5] extract[Elem] getmove[7])
Result : (field "f3")
Operator : enpassant_field
Number : 1
Signature: chessmove -> field
Example : query enpassant_field(wjc feed filter[.No = 5] extract[Elem] getmove[7])
Result : (field undef)
Operator : is_even
Number : 1
Signature: int -> bool
Example : query is_even(2)
Result : TRUE
Operator : exists
Number : 1
Signature: stream(ANY) x (ANY -> bool) -> bool
Example : query wjc feed filter[.No = 0] extract[Elem] getposition[6] pos_fields exists[.Piece = piece("knight")]
Result : crashes
Operator : field
Number : 1
Signature: string -> field
Example : query field( "a1" )
Result : (field "a1")
Operator : column
Number : 1
Signature: field -> string
Example : query column( field("a1") )
Result : "a"
Operator : forall
Number : 1
Signature: stream(ANY) x (ANY -> bool) -> bool
Example : query wjc feed filter[.No = 0] extract[Elem] getposition[6] pos_fields forall[.Piece = piece("none")]
Result : crashes
Operator : getkey
Number : 1
Signature: chessgame x string -> string
Example : query wjc feed filter[.No = 2] extract[Elem] getkey ["Event"]
Result : "WJun"
Operator : getmove
Number : 1
Signature: chessgame x int -> chessmove
Example : query wjc feed filter[.No = 2] extract[Elem] getmove [3]
Result : file
Operator : getposition
Number : 1
Signature: chessgame x int -> position
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6]
Result : file
Operator : history
Number : 1
Signature: chessgame -> stream(tuple([No: int, Pos: position, Move: chessmove]))
Example : query wjc feed filter[.No = 2] extract[Elem] history head[3] consume
Result : file
Operator : includes
Number : 1
Signature: position x position -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[34] includes [ wjc feed filter[.No = 2] extract[Elem] getposition[34] ]
Result : TRUE
Operator : is
Number : 1
Signature: piece x piece -> bool
Example : query piece( "Pawn" ) is piece( "pawn" )
Result : TRUE
Operator : is_castling
Number : 1
Signature: chessmove -> bool
Example : query is_castling( wjc feed filter[.No = 5] extract[Elem] getmove[7] )
Result : FALSE
Operator : is_enpassant
Number : 1
Signature: chessmove -> bool
Example : query is_enpassant(wjc feed filter[.No = 5] extract[Elem] getmove[7])
Result : FALSE
Operator : is_mate
Number : 1
Signature: chessmove -> bool
Example : query is_mate( wjc feed filter[.No = 5] extract[Elem] getmove[7] )
Result : FALSE
Operator : is_neighbor
Number : 1
Signature: field x field -> bool
Example : query field("a1") is_neighbor field("a2")
Result : TRUE
Operator : is_stalemate
Number : 1
Signature: chessmove -> bool
Example : query is_stalemate(wjc feed filter[.No = 5] extract[Elem] getmove[7])
Result : FALSE
Operator : iswhite
Number : 1
Signature: field -> bool
Example : query iswhite( field("a1") )
Result : FALSE
Operator : lastmove
Number : 1
Signature: chessgame -> int
Example : query lastmove( wjc feed filter[.No = 2] extract[Elem] )
Result : 72
Operator : left
Number : 1
Signature: field x field -> bool
Example : query field("a1") left field("b1")
Result : TRUE
Operator : moveNo
Number : 1
Signature: position -> int
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[5] moveNo
Result : 5
Operator : moves
Number : 1
Signature: chessgame -> stream(chessmove)
Example : query wjc feed filter[.No = 2] extract[Elem] moves transformstream head[3] consume
Result : file
Operator : neighbors
Number : 1
Signature: field -> stream( field )
Example : query field("a1") neighbors printstream count
Result : 3
Operator : north
Number : 1
Signature: field -> field
Example : query north( field("a1") )
Result : (field "a2")
Operator : northeast
Number : 1
Signature: field -> field
Example : query northeast( field("a1") )
Result : (field "b2")
Operator : northwest
Number : 1
Signature: field -> field
Example : query northwest( field("a1") )
Result : (field undef)
Operator : is_odd
Number : 1
Signature: int -> bool
Example : query is_odd(2)
Result : FALSE
Operator : piece
Number : 1
Signature: string -> piece
Example : query piece( "Pawn" )
Result : (piece "Pawn")
Operator : piece_moves
Number : 1
Signature: position x piece -> stream(tuple([SPiece: piece, SField: field,EPiece: piece, EField: field]))
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] piece_moves [piece("Queen")] consume
Result : file
Operator : piece_moves_blocked
Number : 1
Signature: position x piece -> stream(tuple([SPiece: piece, SField: field, BPiece: piece, BField: field, EPiece: piece, EField: field]))
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] piece_moves_blocked[piece("Pawn")] consume
Result : file
Operator : piececount
Number : 1
Signature: material x piece -> int
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[1] pieces piececount[piece("Queen")]
Result : 1
Operator : pieces
Number : 1
Signature: position -> material
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] pieces
Result : file
Operator : piecevalue
Number : 1
Signature: piece -> real
Example : query piecevalue( piece( "Pawn" ) ) = 1
Result : TRUE
Operator : pos_fields
Number : 1
Signature: position -> stream( tuple( [Field: field, Piece: piece] ) )
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] pos_fields consume
Result : file
Operator : pos_moves
Number : 1
Signature: position x piece -> stream(tuple([SPiece: piece, SField: field, EPiece: piece, EField: field]))
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] pos_moves consume
Result : file
Operator : pos_moves_blocked
Number : 1
Signature: position -> stream(tuple([SPiece: piece, SField: field, BPiece: piece, BField: field, EPiece: piece, EField: field]))
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] pos_moves_blocked consume
Result : file
Operator : positions
Number : 1
Signature: chessgame->stream(position)
Example : query wjc feed filter[.No = 2] extract[Elem] positions transformstream head[3] consume
Result : file
Operator : posrange_b
Number : 1
Signature: position x field x field -> position
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[6] posrange_b[field("a1"), field("c3")]
Result : file
Operator : protectcount
Number : 1
Signature: position x field -> int
Example : query wjc feed filter[.No = 0] extract[Elem] getposition[6] protectcount[field("c5")]
Result : 1
Operator : protectedby
Number : 1
Signature: position x field x piece -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[28] field("b3") protectedby[piece("Pawn")]
Result : FALSE
Operator : protectedby
Number : 2
Signature: position x piece x piece -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[28] piece("pawn") protectedby[piece("pawn")]
Result : TRUE
Operator : protectedfrom
Number : 1
Signature: position x piece x field -> bool
Example : query wjc feed filter[.No = 5] extract[Elem] getposition[12] piece("Pawn") protectedfrom[field("c1")]
Result : TRUE
Operator : protectedfrom
Number : 2
Signature: position x field x field -> bool
Example : query wjc feed filter[.No = 2] extract[Elem] getposition[28] field("d5") protectedfrom[field("e6")]
Result : FALSE
Operator : readpgn
Number : 1
Signature: text -> stream(chessgame)
Example : query readpgn('wjc.pgn') count
Result : 359
Operator : right
Number : 1
Signature: field x field -> bool
Example : query field("d2") right field("c2")
Result : TRUE
Operator : row
Number : 1
Signature: field -> int
Example : query row( field("a1") )
Result : 1
Operator : samecolor
Number : 1
Signature: piece x piece -> bool
Example : query piece( "Pawn" ) samecolor piece( "Queen" )
Result : TRUE
Operator : south
Number : 1
Signature: field -> field
Example : query south( field("a1") )
Result : (field undef)
Operator : southeast
Number : 1
Signature: field -> field
Example : query southeast( field("a1") )
Result : (field undef)
Operator : southwest
Number : 1
Signature: field -> field
Example : query southwest( field("a1") )
Result : (field undef)
Operator : stalemate
Number : 1
Signature: position -> bool
Example : query stalemate(wjc feed filter[.No = 2] extract[Elem] getposition[6])
Result : FALSE
Operator : startfield
Number : 1
Signature: chessmove -> field
Example : query startfield(wjc feed filter[.No = 5] extract[Elem] getmove[7])
Result : (field "g1")
Operator : twotuples
Number : 1
Signature: stream(tuple(X)) -> stream(tuple([X1, X2]))
Example : query wjc feed head[1] extract[Elem] history twotuples count
Result : 38
Operator : west
Number : 1
Signature: field -> field
Example : query west( field("a1") )
Result : (field undef)