I set authorization immutable flag to be true. Then I got "op_cant_change". How can I set it to be false again?
You can't. That's the purpose of
AUTHORIZATION IMMUTABLE: to allow asset holders to have trust that the asset will not be revoked, or the account deleted in the future. From the docs:
Ensuring asset holders they won’t be revoked: the above functionalities are great for asset issuers who wish to control who can and cannot hold/transact their asset. However, what if I am an asset holder and I am worried that an issuer may freeze the assets I hold? To instill trust in potential asset holders, the issuing account can enable the following flag:
AUTHORIZATION IMMUTABLE: with this setting, none of the authorization flags can be set and the account can never be deleted.