bitwise_left_shift

paddle. bitwise_left_shift ( x: Tensor, y: Tensor, is_arithmetic: bool = True, out: Tensor | None = None, name: str | None = None ) Tensor [source]

Apply bitwise_left_shift on Tensor X and Y .

\[Out = X \ll Y\]

Note

paddle.bitwise_left_shift supports broadcasting. If you want know more about broadcasting, please refer to please refer to Introduction to Tensor .

Parameters
  • x (Tensor) – Input Tensor of bitwise_left_shift . It is a N-D Tensor of uint8, int8, int16, int32, int64.

  • y (Tensor) – Input Tensor of bitwise_left_shift . It is a N-D Tensor of uint8, int8, int16, int32, int64.

  • is_arithmetic (bool, optional) – A boolean indicating whether to choose arithmetic shift, if False, means logic shift. Default True.

  • out (Tensor|None, optional) – Result of bitwise_left_shift . It is a N-D Tensor with the same data type of input Tensor. Default: None.

  • name (str|None, optional) – The default value is None. Normally there is no need for user to set this property. For more information, please refer to Name.

Returns

Result of bitwise_left_shift . It is a N-D Tensor with the same data type of input Tensor.

Return type

Tensor

Examples

>>> import paddle
>>> x = paddle.to_tensor([[1,2,4,8],[16,17,32,65]])
>>> y = paddle.to_tensor([[1,2,3,4,], [2,3,2,1]])
>>> paddle.bitwise_left_shift(x, y, is_arithmetic=True)
Tensor(shape=[2, 4], dtype=int64, place=Place(gpu:0), stop_gradient=True,
       [[2  , 8  , 32 , 128],
        [64 , 136, 128, 130]])
>>> import paddle
>>> x = paddle.to_tensor([[1,2,4,8],[16,17,32,65]])
>>> y = paddle.to_tensor([[1,2,3,4,], [2,3,2,1]])
>>> paddle.bitwise_left_shift(x, y, is_arithmetic=False)
Tensor(shape=[2, 4], dtype=int64, place=Place(gpu:0), stop_gradient=True,
    [[2  , 8  , 32 , 128],
        [64 , 136, 128, 130]])