user91116: I have a little confusion about naming in Bitcoin.
Redeem script is the conditions that will be satisfy. 
For example P2PKH inside P2SH 
OP_DUP OP_HASH160 <PubKHash> OP_EQUALVERIFY OP_CHECKSIG == redeem script

In P2SH-P2WPKH the redeem script is:

The P2SH redeemScript is always 22 bytes. It starts with a OP_0,
  followed by a canonical push of the keyhash (i.e. 0x0014{20-byte
  keyhash}).

Sometime It call script hash, and during the transaction I need to insert the redeem script in witnessScript. "witnessScript": "hex",    (string) (required for P2WSH or P2SH-P2WSH) witness script
Then the redeem script in segwit environment is called redeem script, script hash or witness script?
Witness program

A scriptPubKey (or redeemScript as defined in BIP16/P2SH) that consists of a 1-byte push opcode (for 0 to 16) followed by a data push between 2 and 40 bytes gets a new special meaning.

Witness program depends on script could be scriptPubkey or redeem script?

user208: 
The scriptPubKey is the script as it is placed in the transaction output.
The redeemScript (P2SH only) is the script pushed as the last scriptSig item. In P2SH scripts, the scriptPubKey is equal to OP_HASH160 <Hash160(redeemScript)> OP_EQUAL.
The witness script (P2WSH only) is the script in the last witness stack position.
The witness program is Hash160(pubkey) for P2WPKH, and Hash256(witness_script) for P2WPKH. For native segwit outputs the scriptPubKey is OP_0 <witness_program>; for P2SH-wrapped segwit outputs the redeemScript is OP_0 <witness_program> (and thus the scriptPubKey is OP_HASH160 <Hash160(OP_0 <witness_script>)> OP_EQUAL.


91116: <p>I have a little confusion about naming in Bitcoin.</p>

<p><strong>Redeem script</strong> is the conditions that will be satisfy. 
For example P2PKH inside P2SH </p>

<pre><code>OP_DUP OP_HASH160 &lt;PubKHash&gt; OP_EQUALVERIFY OP_CHECKSIG == redeem script
</code></pre>

<p><a href="https://bitcoincore.org/en/segwit_wallet_dev/#creation-of-p2sh-p2wpkh-address" rel="nofollow noreferrer">In P2SH-P2WPKH the <strong>redeem script</strong> is:</a></p>

<blockquote>
  <p>The P2SH redeemScript is always 22 bytes. It starts with a OP_0,
  followed by a canonical push of the keyhash (i.e. 0x0014{20-byte
  keyhash}).</p>
</blockquote>

<p>Sometime It call script hash, and during the transaction I need to insert the redeem script in witnessScript. <code>"witnessScript": "hex",    (string) (required for P2WSH or P2SH-P2WSH) witness script</code></p>

<p>Then the redeem script in segwit environment is called redeem script, script hash or witness script?</p>

<p><a href="https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki#Witness_program" rel="nofollow noreferrer">Witness program</a></p>

<blockquote>
  <p>A scriptPubKey (or redeemScript as defined in BIP16/P2SH) that consists of a 1-byte push opcode (for 0 to 16) followed by a data push between 2 and 40 bytes gets a new special meaning.</p>
</blockquote>

<p>Witness program depends on script could be scriptPubkey or redeem script?</p>
 208: <ul>
<li>The scriptPubKey is the script as it is placed in the transaction output.</li>
<li>The redeemScript (P2SH only) is the script pushed as the last scriptSig item. In P2SH scripts, the scriptPubKey is equal to <code>OP_HASH160 &lt;Hash160(redeemScript)&gt; OP_EQUAL</code>.</li>
<li>The witness script (P2WSH only) is the script in the last witness stack position.</li>
<li>The witness program is <code>Hash160(pubkey)</code> for P2WPKH, and <code>Hash256(witness_script)</code> for P2WPKH. For native segwit outputs the scriptPubKey is <code>OP_0 &lt;witness_program&gt;</code>; for P2SH-wrapped segwit outputs the redeemScript is <code>OP_0 &lt;witness_program&gt;</code> (and thus the scriptPubKey is <code>OP_HASH160 &lt;Hash160(OP_0 &lt;witness_script&gt;)&gt; OP_EQUAL</code>.</li>
</ul>
