# ISIdentity
Determines whether index set is the identity mapping. 
## Synopsis
```
#include "petscis.h" 
PetscErrorCode ISIdentity(IS is, PetscBool *ident)
```
Collective


## Input Parameters

- ***is -*** the index set



## Output Parameters

- ***ident -*** PETSC_TRUE if an identity, else PETSC_FALSE




Note: If ISSetIdentity() (or ISSetInfo() for a permanent property) has been called,
ISIdentity() will return its answer without communication between processes, but
otherwise the output ident will be computed from ISGetInfo(),
which may require synchronization on the communicator of IS.  To avoid this computation,
call ISGetInfo() directly with the compute flag set to PETSC_FALSE, and ident will be assumed false.


## See Also
 `ISSetIdentity()`, `ISGetInfo()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/vec/is/is/interface/index.c.html#ISIdentity">src/vec/is/is/interface/index.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/vec/is/is/interface/index.c)


[Index of all IS routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
